【问题标题】:Woocommerce: How to remove "Archive" in title?Woocommerce:如何删除标题中的“存档”?
【发布时间】:2012-10-16 01:10:30
【问题描述】:

我正在尝试从页面标题中删除单词“存档”。

如何删除它?通过添加过滤器?

例子:

我的收藏存档 |我的网站名称

【问题讨论】:

    标签: wordpress woocommerce


    【解决方案1】:

    最好使用 Yoast 的 Wordpress SEO。

    在 Titles & Metas 中,转到 Taxonomies 选项卡并更新 Product Categories 的 Title 模板以删除单词 Archive。我的最终看起来像这样:

    %%term_title%% %%page%% %%sep%% %%sitename%%

    【讨论】:

      【解决方案2】:

      您可以在 functions.php 中重写过滤器,使其失败,导致 WooCommerce 无法呈现它。

      function override_page_title() {
      return false;
      }
      add_filter('woocommerce_show_page_title', 'override_page_title');
      

      【讨论】:

      • 或者,单行:add_filter('woocommerce_show_page_title', '__return_false');
      • 或者,add_filter( 'woocommerce_show_page_title', function() { return false; } );
      • 我猜这是错误的答案,因为 op 要求提供标题标签(不是很清楚,但上面的代码 sn-p 看起来像它)。但我正在寻找这个答案。我想从页面模板中删除存档标题,这就是这个函数的作用,所以我很好:)
      【解决方案3】:

      如果您使用的是 Yoast SEO(版本 8.1.2),选项将移至:

      Yoast SEO -> 搜索外观 -> 分类法。

      在那里按产品类别(product_cat)查找并打开它。

      然后从头部删除存档字符串。

      【讨论】:

        【解决方案4】:

        我知道这是一篇旧帖子,但我在这里尝试了答案,但没有奏效。 我找到了基于 renegadesk 答案的解决方案,但是除了转到分类法选项卡之外,我还必须在帖子类型选项卡中更改它。见下文:

        如果您还没有 Yoast 的 Wordpress SEO,请点击 SEO > Titles & Metas > Post Types。向下滚动并查找标题“自定义帖子类型档案”。在“产品”上,您可以编辑此标题的内容。我的现在看起来像这样:

        %%pt_plural%% %%page%% %%sep%% %%sitename%%
        

        【讨论】:

        • 我想我应该提到 Woocommerce 默认情况下不会在标题中显示Products Archive。实际上是 Yoast SEO 引入了它,然后让您跳过箍将其删除。如果您禁用 Yoast SEO,您将看到 Archive 从标题中消失。但是,如果您必须使用 Yoast,他们确实有一个常见问题解答告诉您如何删除 Archive
        • 这几天的路径是:SEO -> Search Appearance -> Taxonomies;然后检查字段 SEO 标题的构成。
        【解决方案5】:

        在 woocommerce 中似乎有 3 个 Archives 实例(区分大小写),其中一个 \wp-content\plugins\woocommerce\woocommerce-hooks.php 在第 50 行附近 和 2 在 \wp-content\plugins\woocommerce\woocommerce-template.php 第 240 行左右 也许其中之一就是您正在寻找的内容,并且您可以修改代码。

        【讨论】:

          【解决方案6】:

          除了 Ted C:

          为此,Wordpress 已经预定义了以 __return_ 开头的函数。 在这种情况下,您要查找的函数是 __return_false。

          add_filter('woocommerce_show_page_title', '__return_false',10,0);也可以。

          最后两个参数是函数的顺序和传递给它的参数个数。

          设置它们总是一个好习惯,但只有当您想修改默认顺序 (10) 和传递的参数数量 (1) 时才需要这样做。

          【讨论】:

            【解决方案7】:

            您对所有情况都有这个过滤器:“get_the_archive_title”。 但也有不同的情况。

            例如你可以做的简单类别:

            function prefix_category_title( $title ) {
              if(is_category()){
                $title = single_cat_title( '', false );
              }
              return $title;
            }
            add_filter( 'get_the_archive_title', 'prefix_category_title' );
            

            对于自定义帖子类型,您应该这样做:

            function prefix_category_title( $title ) {
              if(is_archive('slug-of-your-custom-post-type')){
                $title = single_cat_title( '', false );
              }
              return $title;
            }
            add_filter( 'get_the_archive_title', 'prefix_category_title' );
            

            所以最后你有很多条件,比如:

            • is_category
            • is_archive
            • is_tag
            • is_author
            • is_year
            • is_tax

            https://developer.wordpress.org/reference/functions/get_the_archive_title/

            文森特。

            【讨论】:

              【解决方案8】:

              wp-content/plugins/woocommerce/templates/archive-product.php

              编辑此文件 archive-product.php 并删除以下 3 行。

                                  <h1 class="page-title"><?php woocommerce_page_title(); ?></h1>
              
                          <?php endif; ?>
              

              这将删除商店页面和所有其他页面上的页面标题。

              【讨论】:

              • 问题是要从标题中删除特定单词,而不是整个标题本身。
              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2016-12-10
              相关资源
              最近更新 更多