Jump to content

Wanze

PW-Moderators
  • Content Count

    1,111
  • Joined

  • Last visited

  • Days Won

    10

Everything posted by Wanze

  1. Wanze

    SeoMaestro

    You can setup the default values for each template and pages using that template will inherit the configured placeholder by default, unless overridden on page-level. For your second question: No, there is no such fallback implemented. You would need to programmatically add that logic yourself by using hooks.
  2. Wanze

    SeoMaestro

    Hi @iNoize It should work, here's a quote from the readme: However, you can only use one field as placeholder for the Opengraph image, so either {images} or {immo_images}. Hope that helps! Cheers
  3. Wanze

    SeoMaestro

    Hi @csaggo.com It seems like there is no url field for opengraph tags. At the moment, the og url is generated dynamically based on the page's httpUrl, so you cannot change it at runtime. If the module would use the canonical url at render time, it should work. Can you open an issue on GitHub? πŸ™‚ Cheers
  4. Wanze

    SeoMaestro

    Hi @3fingers Yes and no πŸ™‚ I used ProcessWire for some projects as freelancer, but never at my "daily" work. I still believe that ProcessWire is a great open source software and I'm maintaining a couple of private projects. But in my opinion, ProcessWire lacks of some important features (testing, config management, migration handling, command line tools, extensible frontend etc.) and also it is not easy to setup if multiple people are working on the same project. Nowadays I am writing Flutter apps and Javascript. But of course I still come back here to give some support and to see how ProcessWire evolves! πŸ™‚ Cheers
  5. Wanze

    SeoMaestro

    You're welcome! πŸ™‚Let me know if you need any help in implementing a solution using hooks. Maybe the following examples from the tests could be useful : https://github.com/wanze/SeoMaestro/blob/master/tests/src/SitemapManagerTest.php#L177-L220 Cheers
  6. Wanze

    SeoMaestro

    You have the following possibilities: Manually include/exclude all pages via SeoMaestro field Setup the default value on template level to not include pages in the sitemap, and then manually include them via SeoMaestro field. Or vice versa, whatever makes more sense πŸ™‚ If you know how to use hooks: Exclude the hidden pages by using the hook mentioned in my first answer Cheers
  7. Wanze

    SeoMaestro

    Hi @B3ta, The sitemap generation should not affect your frontend; the sitemap should only be generated on requests where a user is logged into the admin: https://github.com/wanze/SeoMaestro/blob/master/SeoMaestro.module.php#L154 1. If the performance is a problem on sites with a large amount of pages, I suggest to disable the automatic generation and to create the sitemap manually via cronjobs. You'd need a CLI script that bootstraps ProcessWire and then executes $wire->module('SeoMaestro')->getSitemapManager()->generate(). 2. I would be happy to support multiple sitemaps, but I do not have any time/capacity at the moment, nor am I working with ProcessWire anymore. If anyone would like to contribute this, please send a pull request! Cheers
  8. Wanze

    SeoMaestro

    Hi @HerTha, What kind of control do you need exactly? Hidden pages are not excluded from the sitemap by default. Currently, you can either include/exclude hidden pages via SeoMaestro field. Or you can use the following hook to alter sitemap items programatically: https://github.com/wanze/SeoMaestro#___sitemapitems Cheers
  9. Wanze

    SeoMaestro

    Hi @palacios000 There is no setting to strip HTML tags, you'd need to use the following hook to transform the value prior to being rendered by the module: https://github.com/wanze/SeoMaestro#___renderseodatavalue Cheers
  10. Wanze

    SeoMaestro

    @Ben Sayers Are you trying to search meta data in a SeoMaestro field? Unfortunately this is not possible due to the data structure being used by the module, see: https://github.com/wanze/SeoMaestro#available-selectors Cheers
  11. Wanze

    SeoMaestro

    The module uses $page->httpUrl to generate the URL. The protocol of this method is resolved by settings on template and config level ($template->https / $config->noHTTPS). Can you check both of them? The base url is used for the sitemap but also for the canonical url metatag. πŸ™‚ Cheers
  12. Wanze

    SeoMaestro

    Finally released a new version 1.0.1 which should fix the double encoding issues. Please update and report if you still encounter problems. @Sevarf2 Can you check the "Base URL" setting in the module's config?
  13. Wanze

    SeoMaestro

    Hi @VeiJari Thanks! πŸ™‚ It seems that my "fix" to support german umlauts in meta tags breaks letters in other languages. πŸ™ˆ Can you change the code according to this issue? https://github.com/wanze/SeoMaestro/issues/15 I'll release a version 1.0.1 which fixes this as soon as possible. Cheers
  14. Wanze

    SeoMaestro

    The solution mentioned above does not use any hooks. πŸ™‚ I did not test it, but I'm positive that the image pulled from the home page appears in the preview.
  15. Wanze

    SeoMaestro

    Hi all, I just released the first stable version (1.0.0). Decided to go stable because there have not been many bug reports. The module follows the SemVer specification: There won't be any breaking changes in the API for the 1 major version. Here's the changelog of the release: https://github.com/wanze/SeoMaestro/releases/tag/v1.0.0 Happy day πŸ™‚
  16. Wanze

    SeoMaestro

    Hi @adrian You could use the solution mentioned by @sz-ligatur Setup an image field holding the OG image (og_image). Configure this field to use the image of the homepage as default value, if no image is set. Use the placeholder {og_image} in SeoMaestro. The meta tag should now output the image of the homepage unless content editors overwrite the OG image in a page. Would this solution work for you? I think we'd introduce another level of complexity if the inheritance model includes the page tree and I'd rather keep it simple for now πŸ™‚ Cheers
  17. Wanze

    SeoMaestro

    @neophron That's weird. I know why the error happens: The module introduced a new group "structured_data", which also needs a new column for each SeoMaestro field in the database. The following code should take care of this when the module is being updated: https://github.com/wanze/SeoMaestro/blob/master/SeoMaestro.module.php#L64-L68 For some reason in your case, this did not happen. Can you try to execute the code above anywhere in a template? Or temporarily copy it into the module's ready() method. This should update each database table and resolve the error you're seeing. Cheers
  18. Wanze

    SeoMaestro

    It seems like ProcessWire did not update the included FieldtypeSeoMaestro module to 0.9.0. Can you hit the "Refresh" button in the ProcessWire admin? This error should go away if the FieldtypeSeoMaestro module is updated to version 0.9.0 as well.
  19. Wanze

    SeoMaestro

    Hi @neophron Can you download the latest version of the master branch from GitHub and check if you still get this error? The error message was misleading. Before downgrading, did you check if the sitemap has been generated as expected?
  20. Wanze

    SeoMaestro

    Hi @psy The module does a pre-check if the folder of the sitemap is writeable (https://github.com/wanze/SeoMaestro/blob/master/SeoMaestro.module.php#L174-L181). If not, it should not attempt to create the sitemap at all. So I think that we can rule this error out. Thanks @teppo for the investigation and the hint regarding the misleading error message. I fixed it with the following commit: https://github.com/wanze/SeoMaestro/commit/3fc2835b4ea1956006a82b9f8363cb6f89b4f1f4. The module now throws an exception if the sitemap folder is not writeable. This allows to distinguish this error from other errors that could happen during the sitemap generation process. @psy If you update to the latest version on master, you should not see the misleading error message anymore. Did you check the ProcessWire logs if they contain any errors? Also possibly check the PHP error logs on your webserver. My guess is that somehow an error happens during the sitemap generation process. Because this process is executed after the response has been sent back to the client, error messages are not that obvious. If you do not find any error messages, I'd suggest to downgrade ProcessWire to the latest version where things worked as expected. Do you have any SeoMaestro related hooks in place that could cause errors? .htaccess changes should not have any effects on this module. If you can, try to debug what happens during the request, for example with xdebug (like Teppo suggested earlier). Cheers
  21. Wanze

    SeoMaestro

    I agree. Could you open an issue on GitHub? Should be easy to integrate this in the next release. @tires Not in the current version. Technically there is a way, but it feels hacky. You'd need hook after SeoMaestro::___renderSeoDataValue() and then entity decode and encode the value again. See: https://github.com/wanze/SeoMaestro#___renderseodatavalue Cheers
  22. Hi Markus, Why do you want to parse it yourself? πŸ™‚ Twig and Smarty have built-in parsers and both offer to extend the parser with your own functions / filters / modifiers and so on. Twig even allows you to write custom expressions. Here is an example how to integrate the "__('text') function into Twig, assuming you are using the TemplateEngineFactory in combination with the TemplateEngineTwig module. $this->addHookAfter('TemplateEngineTwig::initTwig', function (HookEvent $event) { /** @var \Twig_Environment $twig */ $twig = $event->arguments('twig'); $function = new \Twig_SimpleFunction('__', function ($key) { return __($key, "/site/templates/translations/strings.php"); }); $twig->addFunction($function); }); As you can see, I'm collecting all my translatable strings in a PHP file "strings.php". But you could also extend the twig function to optionally accept the text domain. Cheers
  23. Wanze

    SeoMaestro

    @tires Thanks! The meta tags need to be HTML encoded because they are rendered inside HTML tags. This is not an issue, the tags will appear correctly in Google. The "ä" you are seeing in the source code is not related to the character encoding, it is just a character being HTML encoded. Cheers
  24. Wanze

    SeoMaestro

    @Tyssen I just realized that you are having a different issue. For some reason, the module fails to deserialize a correct SeoMaestro page value object. Does this happen for every page? If you have xdebug installed, you would set a breakpoint here and check what happens during the request: https://github.com/wanze/SeoMaestro/blob/master/FieldtypeSeoMaestro.module.php#L54 Although I cannot see how the code would return anything other than a PageFieldValue object, which means that somewhere this object gets casted to a "stdClass". Are you using any hooks which could produce this problem? Also: Can you check the contents of your database row for the SeoMaestro field and the page where this error occurs? Cheers
  25. Wanze

    SeoMaestro

    The commit which fixes the mentioned issue is not included in PW 3.0.141. You need to get the latest version from the "dev" branch or make sure that you include the code of this commit.
Γ—
Γ—
  • Create New...