Forum Replies Created

Viewing 15 replies - 31 through 45 (of 49 total)
  • Thread Starter arypneta

    (@arypneta)

    Okay, thanks for all your help and advice!

    Thread Starter arypneta

    (@arypneta)

    Okay, thanks for all these details. Can you tell me what would make TSF output noindex if it isn’t set on the page already? Looking at the HTML, above the TSF code, robots is set as index and follow. And then the TSF code sets noindex (which overwrites the index setting of course).

    I understand that a custom post type would be better for everything to just work from an SEO standpoint, but the issue is that we want this site to automatically populate from a custom post type at another site. We are entering the same data in a custom post type on another site using WordPress’ CMS and we don’t want to have to duplicate the work on another site.

    Thanks for the snippet about disabling TSF for a particular query. That might be the best approach and we can manually set everything using wp_head (which has the added benefit of being more stable if we ever switched to a different SEO plugin, which isn’t likely of course, but you never know)

    Thanks for your help!

    Thread Starter arypneta

    (@arypneta)

    It’s a little convoluted, but basically we have our main website where we have a custom post type called Books (“b”). We use that to enter books from authors associated with our organization as well as ones we publish ourselves.

    We have a separate website for our actual publishing entity and the purpose of the rewrite rules is to basically pull the books data from the main site into books page on the publisher site for just the books that are published by us (we use a custom taxonomy to target them). That way, we only have to enter the data once and it will automatically sync. We have an API set up and use a shortcode to pull all the data from the API and display it.

    Obviously, since we use a shortcode, I’m assuming that’s the reason there is no content or image, etc. in <head>. So, I’ve hooked into the SEO framework to add the description and image and title.

    Here’s the relevant rewrite rule. Basically, looks for any page that is siteurl.org/b and gets whatever is after the b and uses that as the slug to query the api. So siteurl.org/b/test-book would look for a book post type with slug test-book on our main site.

    add_rewrite_rule('(b)/([^/]+)/?$', 'index.php?pressbook=$matches[2]', 'top');

    I’ve anonymized the debug output, but here it is with TSF functions:

    <!-- The SEO Framework by Sybre Waaijer -->
    <meta name="robots" content="noindex,max-snippet:-1,max-image-preview:large,max-video-preview:-1" />
    <meta name="description" content="This is definitely a test book. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." />
    <meta property="og:type" content="website" />
    <meta property="og:locale" content="en_US" />
    <meta property="og:site_name" content="Test Press Site" />
    <meta property="og:title" content="Test Book" />
    <meta property="og:description" content="This is definitely a test book. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam…" />
    <meta property="og:image" content="https://siteurl.org/m/2024/06/Test-image-830x1000.png" />
    <meta name="twitter:card" content="summary_large_image" />
    <meta name="twitter:title" content="Test Book" />
    <meta name="twitter:description" content="This is definitely a test book. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam…" />
    <meta name="twitter:image" content="https://siteurl.org/m/2024/06/Test-image-830x1000.png" />
    <script type="application/ld+json">{"@context":"https://schema.org","@graph": [{"@type":"WebSite","@id":"https://siteurl.org/press/#/schema/WebSite","url":"https://siteurl.org/press/","name":"Test Press Site","inLanguage":"en-US","potentialAction": {"@type":"SearchAction","target": {"@type":"EntryPoint","urlTemplate":"https://siteurl.org/press/search/{search_term_string}/"},"query-input":"required name=search_term_string"},"publisher": {"@type":"Organization","@id":"https://siteurl.org/press/#/schema/Organization","name":"Test Press Site","url":"https://siteurl.org/press/","logo":"https://siteurl.org/m/2024/06/Test-image-830x1000.png"}},{"@type":"WebPage","name":"Test Book","description":"This is definitely a test book. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.","inLanguage":"en-US","isPartOf": {"@id": "https://siteurl.org/press/#/schema/WebSite"}}]}</script>
    <link rel="canonical" href="https://siteurl.org/press/b/test-book/" />
    <meta property="og:url" content="https://siteurl.org/press/b/test-book/" />
    <!-- / The SEO Framework by Sybre Waaijer | 4.76ms meta | 1.35ms boot -->
    
    WordPress Query at Meta Generation
    
    Generated in: 0.00051 seconds
    
    cache_version => (string) 'yup'
    has_assigned_page_on_front => (boolean) true
    has_page_on_front => (boolean) true
    page => (integer) 1
    paged => (integer) 1
    query_supports_seo => (boolean) true
    admin_post_type => (string) ''
    current_post_type => (boolean) false
    current_taxonomy => (string) ''
    get_post_type => (boolean) false
    get_post_type_real_id => (boolean) false
    has_blog_page => (boolean) false
    is_404 => (boolean) false
    is_admin => (boolean) false
    is_archive => (boolean) false
    is_attachment => (boolean) false
    is_author => (boolean) false
    is_blog => (boolean) false
    is_blog_as_page => (boolean) false
    is_category => (boolean) false
    is_customize_preview => (boolean) false
    is_date => (boolean) false
    is_day => (boolean) false
    is_feed => (boolean) false
    is_month => (boolean) false
    is_multipage => (boolean) false
    is_page => (boolean) false
    is_post_edit => (boolean) false
    is_post_type_archive => (boolean) false
    is_post_type_archive_supported => (boolean) false
    is_post_type_supported => (boolean) false
    is_preview => (boolean) false
    is_product => (boolean) false
    is_protected => (boolean) false
    is_query_exploited => (boolean) false
    is_real_front_page => (boolean) false
    is_robots => (boolean) false
    is_search => (boolean) false
    is_seo_settings_page => (boolean) false
    is_shop => (boolean) false
    is_single => (boolean) false
    is_singular => (boolean) false
    is_singular_archive => (boolean) false
    is_static_front_page => (boolean) false
    is_tag => (boolean) false
    is_tax => (boolean) false
    is_taxonomy_disabled => (boolean) false
    is_taxonomy_supported => (boolean) false
    is_term_edit => (boolean) false
    is_term_meta_capable => (boolean) false
    is_wp_lists_edit => (boolean) false
    is_year => (boolean) false
    numpages => (integer) 0
    page_id => (integer) 0
    wp_doing_ajax => (boolean) false
    wp_doing_cron => (boolean) false
    wp_is_rest => (boolean) false
    Current WordPress Query
    
    Generated in: 0.00025 seconds
    
    cache_version => (string) 'nope'
    has_assigned_page_on_front => (boolean) true
    has_page_on_front => (boolean) true
    page => (integer) 1
    paged => (integer) 1
    query_supports_seo => (boolean) true
    admin_post_type => (string) ''
    current_post_type => (boolean) false
    current_taxonomy => (string) ''
    get_post_type => (boolean) false
    get_post_type_real_id => (boolean) false
    has_blog_page => (boolean) false
    is_404 => (boolean) false
    is_admin => (boolean) false
    is_archive => (boolean) false
    is_attachment => (boolean) false
    is_author => (boolean) false
    is_blog => (boolean) false
    is_blog_as_page => (boolean) false
    is_category => (boolean) false
    is_customize_preview => (boolean) false
    is_date => (boolean) false
    is_day => (boolean) false
    is_feed => (boolean) false
    is_month => (boolean) false
    is_multipage => (boolean) false
    is_page => (boolean) false
    is_post_edit => (boolean) false
    is_post_type_archive => (boolean) false
    is_post_type_archive_supported => (boolean) false
    is_post_type_supported => (boolean) false
    is_preview => (boolean) false
    is_product => (boolean) false
    is_protected => (boolean) false
    is_query_exploited => (boolean) false
    is_real_front_page => (boolean) false
    is_robots => (boolean) false
    is_search => (boolean) false
    is_seo_settings_page => (boolean) false
    is_shop => (boolean) false
    is_single => (boolean) false
    is_singular => (boolean) false
    is_singular_archive => (boolean) false
    is_static_front_page => (boolean) false
    is_tag => (boolean) false
    is_tax => (boolean) false
    is_taxonomy_disabled => (boolean) false
    is_taxonomy_supported => (boolean) false
    is_term_edit => (boolean) false
    is_term_meta_capable => (boolean) false
    is_wp_lists_edit => (boolean) false
    is_year => (boolean) false
    numpages => (integer) 0
    page_id => (integer) 0
    wp_doing_ajax => (boolean) false
    wp_doing_cron => (boolean) false
    wp_is_rest => (boolean) false

    And here it is with no TSF functions added:

    <!-- The SEO Framework by Sybre Waaijer -->
    <meta name="robots" content="noindex,max-snippet:-1,max-image-preview:large,max-video-preview:-1" />
    <meta property="og:type" content="website" />
    <meta property="og:locale" content="en_US" />
    <meta property="og:site_name" content="Test Press Site" />
    <meta property="og:title" content="Untitled" />
    <meta name="twitter:card" content="summary_large_image" />
    <meta name="twitter:title" content="Untitled" />
    <script type="application/ld+json">{"@context": "https://schema.org","@graph": [{"@type": "WebSite","@id": "https://siteurl.org/press/#/schema/WebSite","url": "https://siteurl.org/press/","name": "Test Press Site","inLanguage": "en-US","potentialAction": {"@type": "SearchAction","target": {"@type": "EntryPoint","urlTemplate": "https://siteurl.org/press/search/{search_term_string}/"},"query-input": "required name=search_term_string"},"publisher": {"@type": "Organization","@id": "https://siteurl.org/press/#/schema/Organization","name": "Test Press Site","url": "https://siteurl.org/press/"}},{"@type": "WebPage","name": "Untitled - Test Press Site","inLanguage": "en-US","isPartOf": {"@id": "https://siteurl.org/press/#/schema/WebSite"}}]}</script>
    <!-- / The SEO Framework by Sybre Waaijer | 1.16ms meta | 1.69ms boot -->
    
    WordPress Query at Meta Generation
    
    Generated in: 0.00039 seconds
    
    cache_version => (string) 'yup'
    has_assigned_page_on_front => (boolean) true
    has_page_on_front => (boolean) true
    page => (integer) 1
    paged => (integer) 1
    query_supports_seo => (boolean) true
    admin_post_type => (string) ''
    current_post_type => (boolean) false
    current_taxonomy => (string) ''
    get_post_type => (boolean) false
    get_post_type_real_id => (boolean) false
    has_blog_page => (boolean) false
    is_404 => (boolean) false
    is_admin => (boolean) false
    is_archive => (boolean) false
    is_attachment => (boolean) false
    is_author => (boolean) false
    is_blog => (boolean) false
    is_blog_as_page => (boolean) false
    is_category => (boolean) false
    is_customize_preview => (boolean) false
    is_date => (boolean) false
    is_day => (boolean) false
    is_feed => (boolean) false
    is_month => (boolean) false
    is_multipage => (boolean) false
    is_page => (boolean) false
    is_post_edit => (boolean) false
    is_post_type_archive => (boolean) false
    is_post_type_archive_supported => (boolean) false
    is_post_type_supported => (boolean) false
    is_preview => (boolean) false
    is_product => (boolean) false
    is_protected => (boolean) false
    is_query_exploited => (boolean) false
    is_real_front_page => (boolean) false
    is_robots => (boolean) false
    is_search => (boolean) false
    is_seo_settings_page => (boolean) false
    is_shop => (boolean) false
    is_single => (boolean) false
    is_singular => (boolean) false
    is_singular_archive => (boolean) false
    is_static_front_page => (boolean) false
    is_tag => (boolean) false
    is_tax => (boolean) false
    is_taxonomy_disabled => (boolean) false
    is_taxonomy_supported => (boolean) false
    is_term_edit => (boolean) false
    is_term_meta_capable => (boolean) false
    is_wp_lists_edit => (boolean) false
    is_year => (boolean) false
    numpages => (integer) 0
    page_id => (integer) 0
    wp_doing_ajax => (boolean) false
    wp_doing_cron => (boolean) false
    wp_is_rest => (boolean) false
    
    Current WordPress Query
    
    Generated in: 0.00023 seconds
    
    cache_version => (string) 'nope'
    has_assigned_page_on_front => (boolean) true
    has_page_on_front => (boolean) true
    page => (integer) 1
    paged => (integer) 1
    query_supports_seo => (boolean) true
    admin_post_type => (string) ''
    current_post_type => (boolean) false
    current_taxonomy => (string) ''
    get_post_type => (boolean) false
    get_post_type_real_id => (boolean) false
    has_blog_page => (boolean) false
    is_404 => (boolean) false
    is_admin => (boolean) false
    is_archive => (boolean) false
    is_attachment => (boolean) false
    is_author => (boolean) false
    is_blog => (boolean) false
    is_blog_as_page => (boolean) false
    is_category => (boolean) false
    is_customize_preview => (boolean) false
    is_date => (boolean) false
    is_day => (boolean) false
    is_feed => (boolean) false
    is_month => (boolean) false
    is_multipage => (boolean) false
    is_page => (boolean) false
    is_post_edit => (boolean) false
    is_post_type_archive => (boolean) false
    is_post_type_archive_supported => (boolean) false
    is_post_type_supported => (boolean) false
    is_preview => (boolean) false
    is_product => (boolean) false
    is_protected => (boolean) false
    is_query_exploited => (boolean) false
    is_real_front_page => (boolean) false
    is_robots => (boolean) false
    is_search => (boolean) false
    is_seo_settings_page => (boolean) false
    is_shop => (boolean) false
    is_single => (boolean) false
    is_singular => (boolean) false
    is_singular_archive => (boolean) false
    is_static_front_page => (boolean) false
    is_tag => (boolean) false
    is_tax => (boolean) false
    is_taxonomy_disabled => (boolean) false
    is_taxonomy_supported => (boolean) false
    is_term_edit => (boolean) false
    is_term_meta_capable => (boolean) false
    is_wp_lists_edit => (boolean) false
    is_year => (boolean) false
    numpages => (integer) 0
    page_id => (integer) 0
    wp_doing_ajax => (boolean) false
    wp_doing_cron => (boolean) false
    wp_is_rest => (boolean) false

    @wpneily You may have figured this out by now, but we had this issue too and I believe what fixed it is setting the slider height to “Fixed Height” instead of “Adaptive Height”. I’m guessing it has to load them all for adaptive height to check the heights and that leads to the issue?

    Thread Starter arypneta

    (@arypneta)

    We were using Duplicate & Merge Posts (which we’ve been using for a while, but I guess it’s no longer on the WordPress plugins listing).

    I couldn’t find Post Publicator by searching, but just got “Duplicate Posts”: https://wordpress.org/plugins/copy-delete-posts/ and it appears to be working! On the free version, it doesn’t copy over any post meta, so the audio file isn’t filled, so when I select a new audio file it uploads with a new id).

    So, thanks for the suggestion! You might also consider updating the Castos documentation as it makes it sound like all duplicate posts plugins will not work (which I guess isn’t true): https://support.castos.com/article/154-i-dont-see-my-episode-in-the-castos-dashboard. Even updating it to say that “some duplicate post plugins won’t work” would help.

    Thread Starter arypneta

    (@arypneta)

    That would be ideal, but unfortunately the new draft still appears to be connected to the previous podcast. Also, if it does work, why does the Castos support website say not to use a duplicate posts plugin? It says “Always create new podcasts by going to Podcast Add New Episode.”

    Here’s a little more explanation on the behavior we are seeing. Say we have Podcast A with the mp3 file uploaded to Castos. Castos gives it a URL, something along the lines of https://episodes.castos.com/id/234523/random-letters-etc.mp3. Podcast A shows up in the Castos dashboard as an episode.

    If we duplicate the podcast in WordPress, it creates a new draft. Let’s call that Podcast B. If we select a new podcast file using the select podcast button, it uploads it to Castos, and the link ends up like this https://episodes.castos.com/id/234523/different-random-letters-etc.mp3. Note that the id is still the same “234523”.

    Almost immediately Podcast B is what shows in the Castos dashboard, and Podcast A doesn’t show up there anymore.

    Both urls still work temporarily (https://episodes.castos.com/id/234523/random-letters-etc.mp3 and https://episodes.castos.com/id/234523/different-random-letters-etc.mp3) but after a certain period of time the link for Podcast A will stop working and give a File not found page while Podcast B will continue to work.

    I didn’t think of this until now, but maybe clearing the audio file link and saving the draft and then uploading the new file would work? Would that trigger it to give it a new Castos Id?

    @aolea, No problem, glad to help! I discovered that under the Apple News sidebar tab, there is an option to see all Articles.

    I did a filter for articles not published since January 22 (we had like 26) and was able to publish in bulk (I did two batches, but it worked fine). So, you might be able to do that once you’ve reverted the version.

    I posted this on the other topic mentioning this issue as well (https://wordpress.org/support/topic/recent-apple-news-api-invalid_document-error), but posting it here as well for visibility.

    We were experiencing this issue too. Reverting to 2.4.3 seems to have temporarily solved the issue. Looks like they are actively working on a fix at GitHub: https://github.com/alleyinteractive/apple-news/issues/1048

    If you want to revert, you can download 2.4.3 (or a previous version) from this page: https://wordpress.org/plugins/publish-to-apple-news/advanced/

    We were experiencing this issue too. Reverting to 2.4.3 seems to have temporarily solved the issue. Looks like they are actively working on a fix at GitHub: https://github.com/alleyinteractive/apple-news/issues/1048

    If you want to revert, you can download 2.4.3 (or a previous version) from this page: https://wordpress.org/plugins/publish-to-apple-news/advanced/

    We were experiencing this issue too. Reverting to 2.4.3 seems to have temporarily solved the issue. Looks like they are actively working on a fix at GitHub: https://github.com/alleyinteractive/apple-news/issues/1048

    If you want to revert, you can download 2.4.3 (or a previous version) from this page: https://wordpress.org/plugins/publish-to-apple-news/advanced/

    Thread Starter arypneta

    (@arypneta)

    Okay, great – thanks!

    Thread Starter arypneta

    (@arypneta)

    So, I think I have solved the issue. There was actually an error, but it didn’t show fully in our production error logs. I was able to see it when I spun up a local development environment:

    WordPress database error Unknown error 1054 for query INSERT INTO wp_redirection_logs (url, domain, ip, created, agent, referrer, request_method, http_code, redirection_id, sent_to, redirect_by) VALUES …. made by require(‘wp-blog-header.php’), require_once(‘wp-load.php’), require_once(‘wp-config.php’), require_once(‘wp-settings.php’), do_action(‘init’), WP_Hook->do_action, WP_Hook->apply_filters, WordPress_Module->init, Red_Item->get_match, do_action(‘redirection_visit’), WP_Hook->do_action, WP_Hook->apply_filters, WordPress_Module->redirection_visit, Red_Item->visit, Red_Redirect_Log::create

    After looking at the table structure between sites, it looks like the site with issues was missing the “request_data” and “redirect_by” columns, which was causing the error. I assume that may be because those columns were added later after we installed Redirection and some migration step was missed.

    Deactivating and re-activating the plugin didn’t automatically add them, so I took a look at 420.php where the database setup was and copied the appropriate SQL queries to create those two columns.

    The messages seem to have stopped and we are seeing data in the log now (which we weren’t before, but I didn’t realize).

    Thread Starter arypneta

    (@arypneta)

    It’s not an actual error per se, but more of a log message. The bolded text below is what shows up in the error log:

    */ made by require(‘wp-blog-header.php’), require_once(‘wp-load.php’), require_once(‘wp-config.php’), require_once(‘wp-settings.php’), do_action(‘init’), WP_Hook->do_action, WP_Hook->apply_filters, WordPress_Module->init, Red_Item->get_match, do_action(‘redirection_visit’), WP_Hook->do_action, WP_Hook->apply_filters, WordPress_Module->redirection_visit, Red_Item->visit, Red_Redirect_Log::create

    It seems to log a message each time a redirect is performed, but this isn’t happening on other other sites just the one.

    Is there anything in your plugin that would login informational messages like this? Everything seems to be working, the messages just clog up the error log. If you don’t think you have anything in your code that would log this message, perhaps it’s a conflict with another plugin that I can investigate further.

    Thread Starter arypneta

    (@arypneta)

    Okay, great – thanks for the update!

    Thread Starter arypneta

    (@arypneta)

    Oh and I am seeing this error in our logs, which may be related (or might just be because I had to rollback to 1.40.1)

    PHP Warning:  Attempt to read property “post_type” on null in wp-content/plugins/block-options/includes/addons/styles-manager/gutenberghub-styles-manager.php on line 33

Viewing 15 replies - 31 through 45 (of 49 total)