Giter Club home page Giter Club logo

google_services's Introduction

Hi there ๐Ÿ‘‹

My name is Tim and I am a PHP backend developer working for HDNET in Werther, Germany.

Some facts...

  • ๐Ÿ”ญ Iโ€™m currently working on TYPO3 Extensions.
  • ๐ŸŒฑ Iโ€™m currently learning A-Frame.io for VR features.
  • ๐Ÿค” Iโ€™m looking for help with game design in TypeScript/A-Frame.io.
  • ๐Ÿ’ฌ Ask me anything about TYPO3.
  • ๐Ÿ“ซ Your reach me via GitHub.
  • โšก Fun fact: I love playing games in the garden -> My Games

google_services's People

Contributors

franzkugelmann avatar larsshift avatar lochmueller avatar rsennert avatar sirdiego avatar smichaelsen avatar steffenk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

google_services's Issues

Integrate the HR date of tt_news

Hello, is there a way to integrate the HR date of tt_news into the links in the loc tag?
I use tt_news with realurl and get the links like this:
<loc>http://www.mydomain.com/news/article/date////example-newstitle.html</loc>
But it should look like this:
<loc>http://www.mydomain.com/news/article/date/2017/04/19/example-newstitle.html</loc>

RealURL 2.x delivers pagetitles in default language instead of localized patch segments for L<>0 when not logged in in BE

...with @dmitryd shutting me down in an almost moron like way, maybe you can shed some light onto this (dmitryd/typo3-realurl#186)

It's reproducable for me across various TYPO3 7.6 installations with realurl 2.x and a real issue with the generated sitemap.xml as it generates invalid links...

I just stumbled across an issue with realurl 2.x (latest stable or dev, doesn't matter) delivering wrong page titles on localized records when not logged in in the backend.

I use EXT:google_services to create XML sitemaps of our websites.

Internally it uses:
$url = $obj->getUriBuilder() ->setTargetPageUid($uid) ->build();

to build the frontend urls for the pages.

Expected output for /fr/sitemap.xml would be forexample:

If I take the page "search" for example which is localized in french with the title "rechercher" I would expect the following output:
http://domain.tld/fr/rechercher/
but it delivers
http://domain.tld/fr/search/

instead. As you see it recognizes the L parameter and mapps it to "fr" but it doesn't get me the localized segment anymore...

Only when not logged in in backend. Disabling cache and clearing the install tool cache don't change anything.

My TypoScript setup regarding language:
`
config {
sys_language_uid = 0
language = en
locale_all = en_GB
htmlTag_langKey = en
sys_language_overlay = hideNonTranslated
sys_language_mode = strict
linkVars = L
}

[globalVar = GP:L = 1]
config.sys_language_uid = 1
config.language = fr
config.locale_all = fr_FR
config.htmlTag_langKey = fr
[global]
`

AbstractXmlView is breaking TYPO3 cache generation

I encountered a bug using the sitemap plugin configured in typoscript with a specific page type for sitemap.xml.

The first rendering of the sitemap page is fine, but all others page calls leads to the "Page is being generated" message.
After a deep search in TYPO3's frontend rendering classes, it appears that the AbstractXmlView::render() function is responsible for this problem :

  • Pages or other records are requested and stored to the cache
  • AbstractXmlView returns the content with a die so the rest of the 'afterRequestDispatch' signal is not triggered.

Due to this last point, the cache generation for the page is considered as not finished.

Using the extension nc_staticfilecache, it appears that the static cache is also not generated.

I've fixed the problem locally by overriding the Index and Overview views to bypass their parent's rendering, and adding the Content-type header in the typoscript setup of the sitemap page.

Here is the typoscript configuration :

[userFunc = TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('google_services')]
lib.googleservice_sitemap = USER
lib.googleservice_sitemap {
       userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
       vendorName = FRUIT
       extensionName = GoogleServices
       pluginName = piSitemap
       controller = Sitemap
       switchableControllerActions {
               Sitemap {
                       1 = index
                       2 = overview
               }
       }
       action = overview
       persistence =< plugin.tx_googleservices.persistence
       persistence {
               storagePid = {$pids.home}
       }
       view =< plugin.tx_googleservices.view
       settings =< plugin.tx_googleservices.settings
       settings {
               startpoint = {$pids.home}
       }
}

sitemap = PAGE
sitemap {
	config {
		xhtml_cleaning = 0
		disableAllHeaderCode = 1
		no_cache = 0
		additionalHeaders {
			10 {
				header = Content-Type:text/xml
			}
		}
	}
	typeNum = 200
	10 < lib.googleservice_sitemap
	10 {
		settings {
			provider = FRUIT\GoogleServices\Service\SitemapProvider\Pages
			depth = 25
		}
   }
}
[end]

Could you precise me the goal of the render modification so I could propose a generic fix ?

thank you in advance

Hardcoded extension name in ext_emconf.php

This line prevents the extension to be installed with composer
https://github.com/lochmueller/google_services/blob/master/ext_emconf.php#L13

- Installing typo3-ter/google-services (1.0.3)
    Downloading: 100%
    Extracting archive


  [ErrorException]
  Undefined index: 258b3bff


Exception trace:
 () at /var/www/vhosts/localhost/vendor/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Downloader/T3xDownloader.php:123
 Composer\Util\ErrorHandler::handle() at /var/www/vhosts/localhost/vendor/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Downloader/T3xDownloader.php:123
 TYPO3\CMS\Composer\Installer\Downloader\T3xDownloader->getEmConfMetaData() at /var/www/vhosts/localhost/vendor/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Downloader/T3xDownloader.php:246
 TYPO3\CMS\Composer\Installer\Downloader\T3xDownloader->writeEmConf() at /var/www/vhosts/localhost/vendor/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Downloader/T3xDownloader.php:70
 TYPO3\CMS\Composer\Installer\Downloader\T3xDownloader->extract() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Downloader/ArchiveDownloader.php:43
 Composer\Downloader\ArchiveDownloader->download() at /var/www/vhosts/localhost/vendor/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/Downloader/T3xDownloader.php:50
 TYPO3\CMS\Composer\Installer\Downloader\T3xDownloader->download() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Downloader/DownloadManager.php:213
 Composer\Downloader\DownloadManager->download() at /var/www/vhosts/localhost/vendor/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/ExtensionInstaller.php:191
 TYPO3\CMS\Composer\Installer\ExtensionInstaller->installCode() at /var/www/vhosts/localhost/vendor/typo3/cms-composer-installers/Classes/TYPO3/CMS/Composer/Installer/ExtensionInstaller.php:123
 TYPO3\CMS\Composer\Installer\ExtensionInstaller->install() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Installer/InstallationManager.php:152
 Composer\Installer\InstallationManager->install() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Installer/InstallationManager.php:139
 Composer\Installer\InstallationManager->execute() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Installer.php:569
 Composer\Installer->doInstall() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Installer.php:228
 Composer\Installer->run() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Command/UpdateCommand.php:173
 Composer\Command\UpdateCommand->execute() at phar:///var/www/vhosts/localhost/composer.phar/vendor/symfony/console/Command/Command.php:259
 Symfony\Component\Console\Command\Command->run() at phar:///var/www/vhosts/localhost/composer.phar/vendor/symfony/console/Application.php:844
 Symfony\Component\Console\Application->doRunCommand() at phar:///var/www/vhosts/localhost/composer.phar/vendor/symfony/console/Application.php:192
 Symfony\Component\Console\Application->doRun() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Console/Application.php:166
 Composer\Console\Application->doRun() at phar:///var/www/vhosts/localhost/composer.phar/vendor/symfony/console/Application.php:123
 Symfony\Component\Console\Application->run() at phar:///var/www/vhosts/localhost/composer.phar/src/Composer/Console/Application.php:99
 Composer\Console\Application->run() at phar:///var/www/vhosts/localhost/composer.phar/bin/composer:43
 require() at /var/www/vhosts/localhost/composer.phar:25

file link tracking would be nice

Hey@all,

great extension and easy to use. Would be nice to have an option for filelink tracking implemented. Dirty workarounds like creating trackable subpages with links to files are not as handy as directly tracking filelinks.

Basically this should be possible:

Download link tracking
Clicks on links to downloadable files (e.g. PDF, AVI, WMV) can be tracked as Events or virtual pageviews. When you set up an Event to track clicks on a link, Analytics counts the clicks as event hits. When you set up a virtual pageview to track clicks on a link, Analytics counts the clicks as page hits.

To track clicks as Events:

If you use Google Tag Manager to manage your Analytics Tracking, read Analytics Events.
If you have Analytics tracking added directly to your site, read Event Tracking - Web Tracking on Analytics Developers.
To track clicks as pageviews:

If you use Google Tag Manager to manage your Analytics Tracking, read about the Analytics tag.
If you have Analytics tracking added directly to your site, read Page Tracking - Web Tracking on Analytics Developers.

Source: https://support.google.com/analytics/answer/1012044?hl=en&visit_id=1-636239650271095099-3490656893&rd=1#Download

Thanks in advance for reading and hopefully mentioning within one of the next versions!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.