分类: 学习

  • 如何将搜索栏添加到WordPress菜单

    默认情况下,WordPress允许您向网站侧边栏、页脚和其他小工具等区域添加搜索。但是,许多用户更喜欢在导航菜单中使用WordPress搜索框,因为它在顶部很容易引人注目。

    在本教程中,我们将向您展示如何在没有任何编码知识的情况下向WordPress菜单添加搜索栏。

    如何将搜索栏添加到WordPress菜单

    为什么要在WordPress导航菜单中添加搜索栏

    搜索栏使您的用户无需离开您的WordPress网站即可轻松找到他们正在寻找的内容。它有助于改善您网站上的用户体验并提高参与度。

    这就是大多数可用性专家建议在导航菜单中添加搜索选项的原因,以便用户可以轻松找到它。但是,默认的WordPress搜索小工具仅限于小工具区域(侧边栏)。

    幸运的是,有许多不同的WordPress搜索插件,可让您将搜索栏添加到网站上的不同位置,包括菜单。

    在本教程中,我们将使用免费的SearchWP Modal Search Form。它易于使用,适合任何主题,而且不会对您网站的性能产生负面影响。

    让我们步入正题,一起看看如何向WordPress导航菜单添加搜索栏。

    向WordPress导航菜单添加搜索栏

    您需要做的第一件事是安装并激活SearchWP Modal Search Form插件。

    激活后,您需要访问外观»菜单以将搜索页面添加到您的WordPress菜单。在那里,确保选择了主菜单。

    SearchWP Modal Search Form插件

    接下来,单击SearchWP Modal Search Form以显示菜单项的设置。请注意,插件已自动添加默认搜索模板。您应该选择它,然后单击“Add to menu”按钮。

    添加搜索栏至主题菜单

    新的Native WordPress Modal Search Form菜单项将添加到右列。您需要单击它以展开其设置。

    您需要将导航标签重命名为“搜索”,然后单击“保存菜单”按钮以保存设置。

    自定义菜单搜索栏

    您可以通过访问您的WordPress网站来查看新的搜索菜单项。弹出式搜索框将自动呈现您的主题外观,您可以在我们测试网站的这两个屏幕截图中看到。

    搜索栏效果展示

    添加Ajax支持的实时搜索

    通过使用Ajax技术添加实时搜索结果,我们可以使我们的搜索表单更加用户友好。这将在您的访问者键入查询时自动更新搜索结果。

    首先,您需要安装并激活SearchWP Live Ajax Search插件。

    一旦激活,插件将立即开始工作。它会自动将实时搜索结果添加到您的所有搜索表单中。

    要查看它的实际效果,只需访问您的WordPress网站并输入搜索查询即可。搜索结果将在您键入时出现。

    添加Ajax支持的实时搜索

    要更多地自定义您的搜索,请参阅我们关于如何使用SearchWP改进WordPress搜索的教程。希望本教程能帮助您了解如何向WordPress菜单添加搜索栏。

  • 如何添加代码片段粘贴至WordPress网站

    在WordPress主题文件中复制和粘贴代码对于有经验的用户来说似乎很容易,但对于初学者来说可能会比较折腾。

    在本教程中,我们将向您展示如何在不破坏您的网站的情况下从网络复制和粘贴代码片段到WordPress。

    如何添加代码片段粘贴至WordPress网站

    为什么要向WordPress网站添加代码片段?

    由于其提供的灵活性,WordPress是世界上最好的网站开源系统之一。向您的站点添加新特性和功能非常容易,并且可以帮助构建几乎任何类型的网站。

    我们分享了各种提示和技巧,您可以使用它们来改善您的网站。其中一些提示会要求您向WordPress添加代码。

    虽然向您的网站添加自定义代码片段是可选的,而且您经常可以找到插件来完成相同的任务,但有时一个简单的代码片段会更有效。

    通常,添加代码片段是修复许多常见WordPress错误、提高WordPress安全性以及向网站添加新功能的简单方法。

    话虽如此,让我们来看看如何安全地将代码片段添加到您的WordPress网站中。

    在WordPress中添加代码片段的最佳方法是什么?

    值得一提的是,在开始向WordPress网站添加代码片段之前,您应该安装并使用WordPress备份插件

    这可以确保您的WordPress站点安全,并且您可以随时从备份中恢复它,以防出现任何问题。

    当添加片段到WordPress,你会发现说明将它们添加到WordPress主题模板文件,如index.phpsingle.php等。

    这些片段仅对那些特定的主题文件有用,因此您必须直接添加它们或创建子主题

    但是,大多数代码片段将添加到您的WordPress主题的functions.php文件中。一些教程可能会建议将其直接添加到文件中,但有更好的替代方法可以让您的更改在未来得到验证。

    这样,即使您更改了主题,也不会删除您的自定义功能。

    话虽如此,让我们来看看在WordPress中添加自定义代码片段的一些最适合初学者的方法。

    1. 使用代码片段WordPress插件

    代码片段WordPress插件

    使用代码片段插件是将代码添加到 WordPress 的最安全且对初学者最友好的方式。

    Code Snippets插件,您可以在您的网站添加和管理自定义代码片段容易。

    它带有一个故障安全开关,如果它导致错误,它会立即停用代码片段。这可以防止您在添加自定义代码片段时无法访问您的网站。

    注意:代码片段方法对于需要添加到functions.php文件中的片段很有用。如果要求您在其他主题文件中添加代码片段,则此方法将不起作用。

    2. 创建子主题以保存自定义代码

    创建子主题以保存自定义代码

    将代码添加到WordPress的另一个好方法是创建WordPress子主题。使用子主题将有助于在更新主题时保持对网站所做的任何更改完整无缺。

    有关更多详细信息,请参阅有关如何在WordPress中创建子主题的初学者指南。

    注意:此方法也适用于需要添加到其他主题模板文件中的代码片段。

    3. 为自定义代码使用特定于站点的插件

    为自定义代码使用特定于站点的插件

    另一个灵活的选择是使用特定于站点的WordPress插件。这是一个自定义插件,您可以为自己的网站创建并用于保存所有自定义代码。

    这种方法的优点是您的代码不依赖于您的主题,即使您更改主题,它也会保持活动状态。它也不受您网站上任何WordPress更新的影响。

    注意:此方法仅适用于需要添加到functions.php文件中的代码片段。

    4.使用Insert Headers and Footers插件添加自定义代码

    Insert Headers and Footers插件添加自定义代码

    有时您可能只需要将代码添加到您的主题header.phpfooter.php文件中。将Insert Headers and Footers插件可以帮你轻松做到这一点。

    当您需要将Google Analytics、Facebook Pixel、Google AdSense等的跟踪代码添加到您的网站时,这会派上用场。

    此外,它还可以让您在一个地方管理所有页眉和页脚代码,防止任何手动错误,并让您无需担心升级或更改主题。

    注意:此方法最适合跟踪脚本、自定义CSS和Javascript代码。

    4.直接在Functions.php文件中添加代码

    在Functions.php文件中添加代码

    最后,可以将代码片段直接添加到主题functions.php文件中。但是,我们建议使用上面的其他选项,因为有一些缺点。

    首先,如果您更新WordPress主题,那么您的所有更改都将消失。

    接下来,您添加的代码仅在您使用该特定主题时才有效。

    话虽如此,让我们来看看如何正确复制和粘贴代码片段并避免破坏您的网站。

    如何编辑和添加代码到WordPress文件

    根据您选择在WordPress博客或网站上添加自定义代码片段的方法,有多种编辑WordPress文件的方法。

    1. 在Code Snippets插件中添加自定义代码

    如果您打算使用Code Snippets插件向WordPress添加代码,那么您将直接在WordPress管理仪表盘中添加代码。

    首先,您需要安装并激活插件。激活后,只需转到WordPress 管理仪表板中的Snippets » Add New

    这会将您带到一个界面,您可以在其中添加自定义代码。您所要做的就是为您的代码片段命名以帮助您记住,然后将您的代码粘贴到框中。

    在Code Snippets插件中添加自定义代码

    然后,单击“Activate”按钮,您的代码段将在您的网站上生效。

    有关详细说明,请参阅有关如何在WordPress中轻松添加自定义代码片段的教程。

    2. 在特定站点的WordPress插件中添加自定义代码

    如果您使用的是特定于站点的插件,那么您可以使用内置的WordPress插件编辑器来添加您的自定义代码。

    首先,您需要转到插件»插件编辑器,然后从标有“选择要编辑的插件:”的下拉菜单中选择您的插件。

    编辑器将加载您的站点特定插件。然后,您可以简单地向页面添加代码。

    插件编辑器

    完成后,请务必单击“更新文件”按钮以保存更改。

    如果您的代码中缺少某些内容或可能破坏您的网站,那么插件编辑器将自动撤消您的更改。

    将自定义代码添加到特定于站点的插件的另一种方法是使用FTP。

    只需使用您首选的FTP客户端打开您的网站,然后右键单击插件文件并选择“查看/编辑”选项。

    FTP编辑插件代码

    这将打开文件,以便您可以添加代码片段。当您再次保存并上传文件时,更改将自动显示。

    3. 使用Insert Headers and Footers插件添加自定义代码

    如果您打算使用Insert Headers and Footers插件来添加代码片段,那么您可以直接从WordPress管理面板执行此操作。

    首先,您需要安装并激活插件。之后,您可以转到设置»Insert Headers and Footers,然后将您的代码片段输入到您网站的页眉、正文或页脚部分。

    Insert Headers and Footers插入代码片段

    确保您点击“保存”按钮,您的代码片段就会出现在您的网站上。

    有关更多详细信息,请参阅有关如何在WordPress中添加页眉和页脚代码的指南。

    4.向Functions.php或其他主题模板添加自定义代码

    如果您将代码片段直接添加到主题functions.php文件或任何其他页面模板,则可以通过导航到WordPress 管理面板中的外观»主题编辑器来添加代码。

    然后,您可以从右侧栏中选择该文件,它将在编辑器中打开。

    主题编辑器添加代码片段

    您所遵循的教程将告诉您可以在何处添加代码片段,但如果没有,则需要在文件底部的所有现有代码下方添加代码。

    另一种选择是使用WordPress托管文件管理器的FTP将自定义代码添加到您的主题文件。

    只需将您的FTP客户端连接到您的网站,然后转到wp-content » themes » your-theme-folder并右键单击需要编辑的文件。

    FTP编辑主题文件

    然后,单击“查看/编辑”选项以在文本编辑器中打开文件并添加您的代码片段。

    添加自定义代码时对PHP错误进行故障排除

    初学者在将自定义代码片段添加到他们的WordPress网站时会犯一些常见的错误。幸运的是,大多数这些错误都可以轻松避免和修复。

    让我们来看看这些错误以及修复它们的最佳方法。

    1. PHP开始和结束标签的错误使用

    WordPress主要是用PHP编程语言编写的,它有一个特定的语法,告诉您的服务器以下代码需要由PHP处理。下面是一个典型的PHP代码片段:

    // PHP Begin Tag
    <?php
    // Rest of the code goes here
    // PHP End Tag
    ?>
    // PHP Begin Tag
    <?php

    // Rest of the code goes here

    // PHP End Tag
    ?>

    // PHP Begin Tag
    <?php
     
    // Rest of the code goes here
     
    // PHP End Tag
    ?>

    您所有的PHP代码都需要在<?php?>标签内。

    PHP结束标记在PHP和HTML之间来回切换的文件中非常重要。这包括大多数使用PHP标签和HTML的WordPress主题文件。

    您需要确保如果您将代码粘贴到PHP开始标记未关闭的位置,那么您需要添加不带PHP开始标记的代码。

    <?php
    // Some pre-existing code
    // your custom code
    ?>
    <?php
    // Some pre-existing code

    // your custom code

    ?>

    <?php 
    // Some pre-existing code
     
    // your custom code
     
    ?>

    如果您将自定义代码粘贴到PHP结束标记之外或之后,则还需要添加PHP开始标记。

    <?php
    // Some pre-existing code
    ?>
    // Your custom code snippet
    <?php
    ?>
    <?php
    // Some pre-existing code
    ?>

    // Your custom code snippet
    <?php

    ?>

    <?php 
    // Some pre-existing code 
    ?> 
     
    // Your custom code snippet
    <?php 
     
    ?>

    几乎90%的错误都是由PHP开始或结束标记的错误放置引起的。查看您的代码将帮助您了解是否需要在自定义代码片段中添加PHP开始或结束标记。

    但是,许多WordPress主题文件functions.php可能根本没有PHP结束标记。这意味着您可以在文件底部添加代码而无需开始或结束标记。

    下面是一个示例。

    <?php
    // Lots of code in your theme’s functions.php file
    //
    //
    // Your custom code
    function custom_loginlogo() {
    echo ‘<style type=”text/css”>
    h1 a {background-image: url(‘.get_bloginfo(‘template_directory’).‘/images/login_logo.png) !important; }
    </style>’;
    }
    add_action(‘login_head’, ‘custom_loginlogo’);
    <?php
    // Lots of code in your theme’s functions.php file
    //
    //
    // Your custom code
    function custom_loginlogo() {
    echo ‘<style type=”text/css”>
    h1 a {background-image: url(‘.get_bloginfo(‘template_directory’).’/images/login_logo.png) !important; }
    </style>’;
    }
    add_action(‘login_head’, ‘custom_loginlogo’);
    <?php
    // Lots of code in your theme's functions.php file
    //
    //
    // Your custom code
    function custom_loginlogo() {
    echo '<style type="text/css">
    h1 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; }
    </style>';
    }
    add_action('login_head', 'custom_loginlogo');

    请记住,某些教程可能假定您已经知道如何使用 PHP 开始和结束标记。因此,他们可能只是向您展示一个没有这些标签的代码片段。

    function custom_loginlogo() {
    echo ‘<style type=”text/css”>
    h1 a {background-image: url(‘.get_bloginfo(‘template_directory’).‘/images/login_logo.png) !important; }
    </style>’;
    }
    add_action(‘login_head’, ‘custom_loginlogo’);
    function custom_loginlogo() {
    echo ‘<style type=”text/css”>
    h1 a {background-image: url(‘.get_bloginfo(‘template_directory’).’/images/login_logo.png) !important; }
    </style>’;
    }
    add_action(‘login_head’, ‘custom_loginlogo’);
    function custom_loginlogo() {
    echo '<style type="text/css">
    h1 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; }
    </style>';
    }
    add_action('login_head', 'custom_loginlogo');

    有时,当给出代码片段时,它们可以添加到多个位置,因此不会包含PHP结束和开始标记。

    当您在主题文件中添加这样的代码片段时,您需要确保它位于PHP标签内。

    2. 不正确的嵌套错误

    PHP对函数、条件逻辑和循环有特定的语法。此语法依赖于指示函数何时开始和何时结束的大括号。

    例如,这是一个简单的PHP函数:

    <?php
    function wbolt_tutorial() {
    echo “Hello World!”;
    }
    ?>
    <?php
    function wbolt_tutorial() {
    echo “Hello World!”;
    }
    ?>
    <?php 
    function wbolt_tutorial() { 
    echo "Hello World!"; 
    } 
    ?>

    现在如果你想添加一个与这个函数无关的自定义代码片段,那么你需要把它放在这个函数之外,如下所示:

    // Pre-existing code in your theme file
    <?php
    function wbolt_tutorial() {
    echo “Hello World!”;
    }
    // Your custom code
    function custom_loginlogo() {
    echo ‘<style type=”text/css”>
    h1 a {background-image: url(‘.get_bloginfo(‘template_directory’).‘/images/login_logo.png) !important; }
    </style>’;
    }
    ?>
    // Pre-existing code in your theme file
    <?php
    function wbolt_tutorial() {
    echo “Hello World!”;
    }
    // Your custom code
    function custom_loginlogo() {
    echo ‘<style type=”text/css”>
    h1 a {background-image: url(‘.get_bloginfo(‘template_directory’).’/images/login_logo.png) !important; }
    </style>’;
    }
    ?>
    // Pre-existing code in your theme file
    <?php
    function wbolt_tutorial() { 
    echo "Hello World!"; 
    } 
    // Your custom code 
    function custom_loginlogo() {
    echo '<style type="text/css">
    h1 a {background-image: url('.get_bloginfo('template_directory').'/images/login_logo.png) !important; }
    </style>';
    }
    ?>

    如果你错过了开始或结束的大括号,那么这将破坏代码,你最终会得到一个错误页面。

    了解WordPress中的PHP错误

    由于向WordPress添加自定义代码而导致的错误通常会导致详细的错误消息。其中大部分是由于意外字符导致的语法错误、解析错误或致命错误

    好消息是这些错误会告诉您代码中的哪一行导致了错误。

    WordPress报错排查

    然后,您可以转到确切的行查看代码并找出您遗漏了什么。

    为此,我们建议使用适当的文本编辑器进行代码编辑,因为它们具有行号和语法突出显示,可以帮助您轻松解决问题。

    当您的WordPress网站无法访问时该怎么办?

    首先,不要惊慌。您网站的所有文件仍然存在,您可以访问它们。

    只需使用FTP客户端或WordPress 托管帐户中cPanel中的文件管理器应用程序连接到您的网站。

    接下来,找到您添加了导致错误的代码的文件,然后打开它进行编辑。

    然后,您可以尝试使用代码段修复问题。如果您无法解决这些问题,只需删除您添加的代码片段并保存更改即可。

    现在,您的网站应该会再次恢复正常。如果它仍然显示一些错误,请下载您的WordPress主题的新副本并将zip文件解压缩到您的计算机。

    之后,找到您之前进行更改的文件,并在覆盖旧文件的同时将其上传到您的服务器。

    有关解决这些问题的更多方法,请参阅我们关于最常见的WordPress错误以及如何修复它们的指南

    最后,我们希望本教程能帮助您了解如何将代码片段粘贴到WordPress中。

  • 如何为您的WordPress网站添加自定义代码

    常在阅读WordPress教程时,您可能会被要求在主题的functions.php文件或特定于站点的插件中添加自定义代码片段。问题是,即使是最轻微的错误也会破坏您的网站。在本文中,我们将向您展示一种在WordPress中添加自定义代码而不会破坏您的网站的简单方法。

    如何为您的WordPress网站添加自定义代码

    自定义代码片段的问题

    通常,您会在WordPress教程中找到代码片段,其中包含将它们添加到主题的functions.php文件或站点特定插件中。

    问题是,即使自定义代码片段中的一个小错误也可能破坏您的WordPress网站并使其无法访问。

    另一个问题是,如果您在特定于站点的插件中添加多个代码片段,则管理文件会变得困难。

    最近在寻找解决方案时,我们发现用户可以轻松地在WordPress中添加和管理自定义代码片段。

    在WordPress中添加自定义代码片段

    您需要做的第一件事是在您的网站上安装并激活Code Snippets插件。

    激活后,该插件会在您的WordPress管理栏中添加一个标有Snippets的新菜单项。单击它会显示您保存在网站上的所有自定义代码片段的列表。

    由于您刚刚安装了插件,因此您的列表将为空。

    继续并单击“安装插件”按钮以在WordPress中添加您的第一个自定义代码片段。

    Snippets代码片段插件

    这会将您带到“Add New Snippet”页面。

    您需要首先输入自定义代码片段的标题。这可以是任何可以帮助您识别代码的东西。之后,您可以将代码片段复制并粘贴到代码框中。

    添加代码片段

    在上面的屏幕截图中,我们添加了一个自定义代码片段以从我们的测试站点中删除WordPress版本号

    function wpb_remove_version() {
    return ;
    }
    add_filter(‘the_generator’, ‘wpb_remove_version’);
    function wpb_remove_version() {
    return ”;
    }
    add_filter(‘the_generator’, ‘wpb_remove_version’);
    function wpb_remove_version() {
    return '';
    }
    add_filter('the_generator', 'wpb_remove_version');

    在代码框下方,您将看到一个用于添加描述的文本区域。您可以在此处添加任何内容,以帮助您了解此代码的作用、您在何处找到它以及将其添加到网站的原因。

    代码片段描述

    您还可以为代码片段分配标签。这将帮助您按主题和功能对代码片段进行排序。

    最后,您可以单击“Save Changes and Activate”按钮。

    如果您只想保存代码片段而不激活它,那么您可以单击“Save Changes”按钮。

    您还可以更改代码片段的范围。您只能在WordPress管理后台、网站前端或任何地方运行它。如果您不确定,请保持选中默认的“Run snippet everywhere”选项。

    保存并激活代码段后,它将立即在您的网站上生效。

    处理自定义代码中的错误

    通常,如果您在特定于站点的插件或主题文件中添加自定义代码时出错,它会立即使您的站点无法访问。

    您会开始在您的站点上看到语法错误500内部服务器错误。要解决此问题,您需要使用FTP客户端手动撤消您的代码。

    Code Snippets插件的巧妙之处在于它会自动检测代码中的语法错误并立即停用它。

    处理自定义代码中的错误

    它还会向您显示有用的错误消息,以便您可以调试错误。

    管理您的自定义代码片段

    Code Snippets插件提供了一个更简单的图形用户界面来管理您在WordPress中的自定义代码片段。

    您可以保存代码片段而无需在您的网站上激活它们。您可以随时停用该代码段。您还可以导出特定的代码片段或批量导出所有代码片段。

    导出代码片段

    如果您要将网站移动到不同的服务器,您可以通过访问Snippets » Import页面,使用代码片段插件轻松导入代码片段。

    导入代码片段

    Code Snippets插件开箱即用,但您可以通过访问Snippets » Settings页面来调整插件设置。

    Code Snippets插件设置

    我们希望本文能帮助您了解如何在WordPress中轻松添加自定义代码。想在您的网站上试验一些代码片段吗?查看我们的关于WordPress函数文件详细介绍文章。

  • 如何自定义WordPress网站RSS Feed页脚内容

    您可以在RSS Feed中的文章内容下方添加自定义文本、链接甚至广告。在本教程中,我们将介绍如何在WordPress中轻松控制RSS Feed页脚,以便您可以显示所需的内容。

    如何自定义WordPress网站RSS Feed页脚内容

    为什么要在WordPress的RSS Feed页脚中添加内容?

    RSS Feed为用户提供了一种更简单的方式,可以在他们最喜欢的提要阅读器应用程序(例如Feedly)中阅读您的博客文章。

    但是,内容抓取工具也可以使用RSS Feed在您的博客文章发布后立即自动采集它们。

    有时,这些内容采集工具最终在搜索引擎中的排名高于您的原始文章。

    要了解更多信息,请参阅我们在WordPress中防止博客内容被抓取采集的教程。

    向RSS Feed页脚添加其他内容允许您在每篇文章的末尾添加指向主站点和原始文章的反向链接。这可以帮助您在文章中获得更高的排名,即使它们被内容抓取工具复制。

    通过操作您的RSS Feed页脚,您还可以让您的读者直接从RSS Feed访问您的WordPress博客。

    话虽如此,让我们来看看如何在 WordPress 中轻松控制您的 RSS 提要页脚。

    方法 1. 使用多合一 SEO将内容添加到RSS Feed页脚

    这种方法更简单,推荐给所有 WordPress 用户。它使用多合一SEO插件,这是最佳WordPress SEO插件之一。

    首先,您需要安装并激活多合一SEO插件。激活后,您需要访问All in One SEO » General Settings页面,然后单击“RSS Content”选项卡。

    这为您提供了WordPress RSS Feed设置和RSS Feed链接的概览。

    All in One SEO常规设置

    在“RSS Content Settings”下,第一个框允许您在每个文章之前添加内容。第二个框允许您向文章页脚添加内容。

    接下来,向下滚动到“RSS After Content”部分以编辑您的RSS Feed页脚。

    RSS Feed页脚内容设置

    马上,您会注意到AIOSEO会在RSS Feed页脚中自动添加带有反向链接的版权所属文本到您的网站。

    您可以按原样使用文本,也可以添加自己的内容和标签。

    自定义RSS Feed页脚内容

    在退出屏幕之前,不要忘记单击“保存更改”。

    您现在可以查看您的RSS Feed以查看更改。在每篇文章的末尾,您将能够看到您添加到RSS Feed页脚的内容。

    RSS Feed页脚内容自定义示例

    方法 2:在WordPress中手动将内容添加到RSS Feed页脚

    此方法要求您将代码添加到WordPress文件中。如果您以前没有这样做过,请查看我们的指南,了解如何在WordPress中复制和粘贴代码

    您需要将以下代码复制并粘贴到主题的functions.php文件、特定于站点的插件中或使用代码片段插件

    function wpb_feed_filter($query) {
    if ($query->is_feed) {
    add_filter(‘the_content’,‘wpb_feed_content_filter’);
    add_filter(‘the_excerpt_rss’,‘wpb_feed_content_filter’);
    }
    return $query;
    }
    add_filter(‘pre_get_posts’,‘wpb_feed_filter’);
    function wpb_feed_content_filter($content) {
    // Content you want to show goes here
    $content .= ‘<p>Thanks for reading, check out <a href=”‘. get_bloginfo(‘url’) .‘”>’. get_bloginfo(‘name’) .‘</a> for more awesome stuff.</p>’;
    return $content;
    }
    function wpb_feed_filter($query) {
    if ($query->is_feed) {
    add_filter(‘the_content’,’wpb_feed_content_filter’);
    add_filter(‘the_excerpt_rss’,’wpb_feed_content_filter’);
    }
    return $query;
    }
    add_filter(‘pre_get_posts’,’wpb_feed_filter’);

    function wpb_feed_content_filter($content) {
    // Content you want to show goes here
    $content .= ‘<p>Thanks for reading, check out <a href=”‘. get_bloginfo(‘url’) .’”>’. get_bloginfo(‘name’) .'</a> for more awesome stuff.</p>’;
    return $content;
    }

    function wpb_feed_filter($query) {
    if ($query->is_feed) {
    add_filter('the_content','wpb_feed_content_filter');
    add_filter('the_excerpt_rss','wpb_feed_content_filter');
    }
    return $query;
    }
    add_filter('pre_get_posts','wpb_feed_filter');
      
    function wpb_feed_content_filter($content) {
    // Content you want to show goes here 
    $content .= '<p>Thanks for reading, check out <a href="'. get_bloginfo('url') .'">'. get_bloginfo('name') .'</a> for more awesome stuff.</p>';
    return $content;
    }

    此代码仅检查请求的页面是否为RSS Feed,然后过滤内容以在RSS Feed页脚中显示您的消息。

    我们希望本教程能帮助您了解如何在WordPress中控制RSS Feed页脚。您可能还想进一步了解如何为WordPress设置多合一SEO插件以及最佳RSS Feed插件推荐清单

  • 如何防止别人采集抓取您的WordPress内容

    您是否正在寻找一种方法来防止垃圾评论发送者和诈骗者使用内容抓取工具采集您的WordPress博客内容?

    作为网站所有者,看到有人在未经许可的情况下采集您的内容,从中获利,在Google等搜索引擎上的排名超过您,这是非常令人沮丧的。

    在本教程中,我们将介绍什么是博客内容采集、如何减少和防止内容采集,甚至如何利用内容抓取来为自己谋利。

    如何防止别人采集抓取您的WordPress内容

    什么是博客内容抓取?

    博客内容采集抓取是指从众多来源获取内容并在另一个站点上重新发布的内容。通常这是通过您博客的RSS Feed自动完成的。

    内容抓取现在非常容易,任何人都可以启动WordPress网站,放置免费或商业主题,并安装一些插件,这些插件将从选定的博客中采集内容。

    为什么内容抓取工具会采集我的内容?

    我们的一些用户问我们为什么要采集我的内容?简单的答案是因为你很棒。事实是,这些内容抓取者别有用心。以下是有人会采集您的内容的几个原因:

    • 联盟佣金– 有一些肮脏的联盟营销人员只是想利用该系统赚取额外的钱。他们将使用您的内容和其他人的内容通过搜索引擎为他们的网站带来流量。这些网站通常针对特定的利基市场,因此他们有正在推广的相关产品。
    • 潜在客户生成——我们经常看到律师和房地产经纪人这样做。他们希望在自己的小社区中看起来像行业领导者。他们没有足够的带宽来制作高质量的内容,所以他们出去从其他来源抓取内容。有时,他们甚至没有意识到这一点,因为他们每月支付30美元来添加内容并帮助他们获得更好的SEO。我们过去遇到过不少这样的情况。
    • 广告收入——有些人只想创建一个知识“中心”。为特定领域的用户提供一站式服务。我们经常注意到我们的网站内容正在被抓取。刮板者总是回答说,我这样做是为了社区的利益。除了该网站贴满广告。

    这些只是有人会采集您的内容的几个原因。

    如何捕捉内容爬虫?

    捕获内容抓取工具是一项乏味的任务,可能会占用大量时间。您可以通过几种方法来捕获内容抓取工具。

    用你的文章标题在谷歌搜索

    是的,这听起来很痛苦。这种方法可能不值得,特别是如果你正在写一个非常流行的话题。

    引用

    如果您在文章中添加内部链接,如果网站采集您的内容,您会注意到引用。这种方式几乎是告诉您他们正在刮您的内容。

    如果您使用Akismet,那么很多这些引用将显示在垃圾评论文件夹中。同样,这仅在您的文章中有内部链接时才有效。

    Ahrefs

    如果您可以使用Ahrefs之类的 SEO 工具,则可以监控您的反向链接并留意被盗内容。

    如何处理内容抓取工具

    人们在处理内容采集工具时采用的方法很少:无所作为方法、删除方法或利用它们的方法。

    让我们来看看每一个。

    什么都不做的方法

    这是迄今为止您可以采取的最简单的方法。通常最受欢迎的博主会推荐这个,因为它需要很多时间来对抗爬虫。

    现在很明显,如果是像Smashing Magazine、CSS-Tricks、Problogger等知名博客,那么他们就不必担心了。他们是谷歌眼中的权威网站。

    然而,我们知道一些好的网站被标记为采集工具,因为谷歌认为他们的采集工具是原始内容。因此,在我们看来,这种方法并不总是最好的。

    采取措施

    这与“什么都不做”的方法完全相反。在这种方法中,您只需联系抓取工具并要求他们删除内容。

    如果他们拒绝这样做或根本不回复您的请求,那么您可以向他们的主机提交DMCA(数字千年版权法案)。

    根据我们的经验,大多数抓取网站都没有可用的联系表格。如果他们这样做,然后利用它。如果他们没有联系表,那么您需要进行Whois查询。

    Whois查询

    您可以在管理联系人上看到联系信息。通常行政和技术联系人是相同的。

    它还将显示域注册商。大多数知名的网络托管公司和域名注册商都有DMCA表格或电子邮件。您可以看到这个特定的人使用HostGator,因为他们的域名服务器。HostGator有一个DMCA投诉表格。

    如果名称服务器类似于ns1.theirdomain.com,那么您必须通过反向IP查找和搜索IP进行更深入的挖掘。

    您还可以使用DMCA.com的第三方服务进行删除。

    Jeff Starr在他的文章中建议你应该屏蔽坏人的IP。访问您的日志以获取其IP地址,然后在您的根.htaccess文件中使用以下内容阻止它:

    Deny from 123.456.789
    Deny from 123.456.789
    Deny from 123.456.789

    您还可以通过执行以下操作将它们重定向到虚拟Feed:

    RewriteCond %{REMOTE_ADDR} 123.456.789.
    RewriteRule .* http://dummyfeed.com/feed [R,L]
    RewriteCond %{REMOTE_ADDR} 123.456.789.
    RewriteRule .* http://dummyfeed.com/feed [R,L]
    RewriteCond %{REMOTE_ADDR} 123.456.789.
    RewriteRule .* http://dummyfeed.com/feed [R,L]

    正如Jeff建议的那样,您可以在这里获得真正的创意。将它们发送到包含Lorem Ipsum的非常大的文本提要。你可以给他们发送一些恶心的坏事图片。您还可以将它们直接发送回他们自己的服务器,从而导致无限循环,从而使他们的网站崩溃。

    我们采取的最后一种方法是利用它们。

    如何利用内容抓取工具

    这是我们处理内容抓取工具的方法,结果非常好。它有助于我们的SEO以及帮助我​​们赚取额外收入。

    大多数抓取工具使用您的RSS Feed来采集您的内容。所以这些是你可以做的一些事情:

    • 内部链接– 您需要大量链接您的博客文章。当您的文章中有内部链接时,它可以帮助您增加浏览量并降低您自己网站的跳出率。其次,它可以从采集您内容的人那里获得反向链接。最后,它允许您采集他们的观众。如果您是一位才华横溢的博主,那么您就会了解内部链接的艺术。您必须将链接放在有趣的关键字上。让用户很容易点击它。如果你这样做,那么刮板的观众也会点击它。就像那样,你从他们的网站上带走了一个访问者,然后把他们带回了他们本来应该去的地方。
    • 使用附属链接自动链接关键字– 很少有像ThirstyAffiliates这样的插件会自动用附属链接替换指定的关键字,
    • 使用RSS页脚发挥创意– 您可以使用多合一SEO插件将自定义项目添加到您的RSS页脚。您可以在此处添加任何您想要的内容。我们知道有些人喜欢向他们的 RSS 阅读器宣传他们自己的产品。所以他们会添加横幅。你猜怎么着,现在这些横幅也将出现在这些刮刀的网站上。在我们的案例中,我们总是在RSS Feed中的文章底部添加一点免责声明。通过这样做,我们从“他们”的网站获得原始文章的反向链接,让谷歌和其他搜索引擎知道我们是权威的。它还让他们的用户知道该网站正在采集我们的内容。

    查看我们的指南,了解如何在WordPress中控制您的RSS Feed页脚以获取更多提示和想法。

    如何减少和防止WordPress博客抓取

    考虑到如果您采用我们的大量内部链接方法、添加附属链接、RSS横幅等,您将有可能将内容抓取减少到很好的程度。如果您采纳Jeff Starr的重定向内容抓取工具的建议,那也将阻止这些抓取工具。除了我们上面分享的内容之外,您还可以使用其他一些技巧。

    完整与摘要RSS Feed

    博客社区一直在争论是否有完整的RSS Feed或摘要RSS Feed。我们不会详细讨论该辩论,但是拥有仅摘要RSS Feed的优点之一是您可以防止内容抓取。

    您可以通过转到WordPress管理后台并转到设置 » 阅读来更改设置。然后更改设置对于feed中的每篇文章,包含全文或者摘要。

    引用垃圾评论

    TrackbacksPingbacks肯定有很大的用处,但是,它们现在经常被滥用。

    主题通常会在评论下方或评论中显示引用和pingback。这使垃圾邮件发送者有动力抓取您的网站并发送引用。如果您错误地批准了它,那么他们会得到一个反向链接并从您的网站上提及。当然,您可以在所有文章中禁用引用

    采集内容是否有效

    有可能。如果您看到来自爬虫站点的大量流量,那么它可以。

    然而,在大多数情况下,事实并非如此。您应该始终尝试删除您的内容。但是您会意识到随着您的博客变大,几乎不可能跟踪所有内容抓取工具。国外网站博主会发出DMCA投诉,但是一般情况下,大部分博主知道还有很多其他网站在采集他们的内容,只是他们无暇顾及。

    我们希望本教程能帮助您防止WordPress内容被采集抓取。您可能还想了解如何实现WordPress图片被盗链,及通过蜘蛛统计分析插件拦截不需要的爬虫。

  • 如何禁止WordPress网站右键选择及复制文本

    许多想要禁止他人直接复制粘贴其内容的站长可能希望应用这一点。这基本上只是让人们更难从您的网站复制文本。

    在本教程中,我们介绍如何禁止他人选择文本,复制粘贴您的WordPress页面内容。

    如何禁止WordPress网站右键选择及复制文本

    为什么禁用页面文本选择和复制/粘贴?

    许多博主发现他们的内容在未经许可的情况下被盗和使用。

    这可以通过自动内容采集来实现。如果有人手动复制您的部分或全部内容,也会发生这种情况。

    使这更困难的一种方法是防止人们复制和粘贴您的文本。您可以通过让他们更难选择您网站上的文本来做到这一点。

    请记住,精通技术的用户仍然可以查看源代码或使用Inspect工具复制他们想要的任何内容。这些技术也不会阻止使用自动博客工具通过RSS获取内容的人。

    牢记这一点,让我们来看看在WordPress中禁止页面文本选择和复制的几种方法。

    方法 #1:使用CSS禁止文本选择

    这种方法更简单,您只需要向WordPress主题添加一些自定义CSS代码即可。如果您以前没有这样做过,请在开始之前查看我们的关于向您的网站添加自定义CSS的指南。

    首先,您需要访问WordPress 管理区域中的外观»自定义页面以启动主题定制器。

    WordPress自定义CSS

    在主题定制器中,您需要单击左侧栏中的“额外CSS”选项卡。

    现在,您将看到一个框,用于将自定义CSS添加到您的WordPress主题。只需将以下CSS代码复制并粘贴到该框中即可。

    * {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently supported by Chrome, Opera and Firefox */
    }
    * {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently supported by Chrome, Opera and Firefox */
    }
    * {
      -webkit-touch-callout: none; /* iOS Safari */
      -webkit-user-select: none; /* Safari */
      -khtml-user-select: none; /* Konqueror HTML */
      -moz-user-select: none; /* Old versions of Firefox */
      -ms-user-select: none; /* Internet Explorer/Edge */
       user-select: none; /* Non-prefixed version, currently supported by Chrome, Opera and Firefox */
    }

    代码来源

    这是添加后代码的外观。

    WordPress额外CSS

    现在,继续尝试在实时定制器中选择页面上的一些文本。你会发现你无法选择它。

    不要忘记单击屏幕顶部的“发布”按钮,让每个人都能看到您的更改。

    方法#2:使用插件禁用文本选择

    对于这种方法,我们将使用禁用文本选择和右键单击的WordPress插件。这也将保护图像不被下载和重复使用。

    首先,您需要安装并激活WP Content Copy Protection插件。

    激活后,该插件将直接开箱即用。用户将无法再从您的网站复制和粘贴文本。他们也无法右键单击或打印您的内容。

    如果您想更改插件的设置,这样做很容易。只需转到WordPress管理后台中的复制保护页面。在这里,您可以选择启用或禁用对特定类型内容的保护。

    WP Content Copy Protection插件

    确保在进行任何更改后单击“保存设置”按钮。

    您还可以更改在有人尝试打印您的内容时显示的消息。该消息将在打印预览和打印输出本身中显示为这样。

    禁用文本选择提示信息

    禁用WordPress页面文本选择是个好主意吗?

    虽然许多新网站所有者希望禁止人们从他们的网站复制/粘贴内容,但这些技术并不能真正防止内容被复制粘贴。

    任何精通技术的用户都可以轻松打开您的网站代码源以复制他们想要的任何内容。

    也不是每个复制您的文本的人都会成为内容窃贼。例如,有些人可能想要复制标题以在社交媒体上分享您的帖子。

    这就是为什么禁用文本选择不是最佳实践的原因。我们建议您仅在您认为您的网站真正需要它时才使用此方法。

    在大多数情况下,最好寻找一种替代方法来防止内容被盗。如果网站未经许可重新发布您的内容,那么您可以找出谁在托管该网站并发送DMCA删除通知。

    我们希望本教程能帮助您了解如何禁止WordPress页面文本选择和复制/粘贴,虽然这是一个“馊主意”。

  • 优化WordPress网站RSS Feed的12个技巧

    默认情况下,每个WordPress站点都有一个 RSS Feed。您可以优化此供稿以保护您的内容、向您的网站发送更多流量等等。

    在本教程中,我们介绍如何以正确的方式优化和自定义您的RSS Feed。

    优化WordPress网站RSS Feed的12个技巧

    为什么要优化WordPress网站的RSS Feed?

    RSS Feed为您的读者提供了一种在他们最喜欢的提要阅读器应用程序(如Feedly)中订阅和阅读您的博客文章的方式。

    尽管提要阅读器不像以前那么受欢迎,但仍有许多读者更喜欢以这种方式阅读WordPress博客内容。

    通过优化您的RSS Feed,您还可以防止内容抓取、获得更多反向链接、向您的网站发送流量等等。

    话虽如此,让我们了解优化RSS Feed的专家提示。

    1. 创建RSS Feed站点地图

    RSS站点地图不同于XML站点地图。RSS站点地图仅包含您最近的内容,这有助于Google使您的内容在搜索结果中保持最新。

    如果您经常发布内容,那么这可能会提高您的搜索引擎排名。

    多合一 SEO插件允许您轻松地将RSS站点地图添加到您的网站,而无需编写代码。

    您需要做的第一件事是安装并激活多合一 SEO插件。激活后,系统会提示您设置插件。您可以按照设置向导中的指导步骤进行操作,或查看我们的指南,了解如何为WordPress设置多合一SEO

    AIOSEO会自动启用RSS站点地图,因此您无需执行任何其他操作。

    如果您想仔细检查,只需转到All in One SEO » Sitemap,然后单击“RSS Sitemap”选项卡。

    您可以看到“RSS Sitemap”框中的“Enable Sitemap”开关已启用。

    RSS Sitemap

    您还可以在“Sitemap Settings”框中设置要包含的文章数量和文章类型。

    我们将保留默认设置,但您可以包含更多文章或仅包含某些文章类型。

    sitemap设置

    在您离开屏幕之前,请务必单击“保存更改”按钮。

    现在您已经为您的网站启用了RSS站点地图。

    要将您的新RSS站点地图提交给Google,您可以查看我们关于如何将您的WordPress网站添加到Google Search Console的教程。这与提交XML站点地图的过程相同。

    2. 在内容前后编辑您的RSS Feed

    默认情况下,WordPress网站RSS Feed将显示您最近发布的内容,并且没有内置选项可以为您的读者自定义该内容。

    幸运的是,您可以使用 All in One SEO插件轻松自定义内容前后的RSS Feed。

    只需按照与上述相同的步骤安装、激活和设置插件。

    之后,导航到All in One SEO » General Settings,然后单击“RSS Content”菜单选项。

    All in One SEO常规设置

    在此屏幕上,您可以在RSS源中的每个文章前后添加要显示的任何内容。

    您可以向每个部分添加HTML、链接的智能标签和其他元数据。

    RSS内容自定义

    一旦您对更改感到满意,请务必单击“保存更改”按钮以保存您的RSS Feed。

    3. 保护您的RSS Feed免受内容抓取

    内容抓取是指内容从您的网站上获取,通常是通过您的RSS Feed,然后在其他人的网站上作为他们自己的网站重新发布。

    看到有人窃取您的内容并从中获利,甚至在搜索结果中的排名超过您的网站,这可能会令人非常沮丧。

    幸运的是,如果有人通过您的RSS Feed窃取您的内容,您可以自定义您的RSS Feed以使您的站点真正受益。

    有关更多详细信息,请参阅我们的初学者指南,以防止WordPress博客内容被抓取

    4.在RSS Feed中显示摘录而不是全文

    在RSS Feed中显示您的完整文章可以让您的用户在他们的提要阅读器中阅读整篇文章。这会对您的网页浏览量、广告收入和转化率产生负面影响。

    通过在RSS Feed中显示文章摘要而不是全文,您需要读者访问您的WordPress网站阅读全文。

    WordPress带有一个内置的解决方案。只需转到您的WordPress管理仪表盘下的设置»阅读

    然后,向下滚动到标题为“对于feed中的每篇文章,包含”部分,并选择“摘要”单选按钮。

    RSS Feed中显示摘录

    您还可以控制RSS Feed中显示的文章数量。

    在“Feed中显示最近”框中,只需在框中输入一个数字即可。

    在您离开此屏幕之前,请务必单击“保存更改”按钮以更新您的RSS Feed设置。

    5. 在RSS源中的文章中添加特色图片

    默认情况下,WordPress不会将您的文章特色图片添加到您的RSS Feed中。当您的用户在Feed阅读器中阅读您的文章时,它通常会拉取您文章中的第一张图片。

    您可以通过向WordPress文件添加代码来更改此设置。如果您以前没有这样做过,请参阅我们的初学者指南,将网页中的代码片段粘贴到WordPress中

    您需要做的就是将以下代码添加到您的functions.php文件、站点特定插件中,或使用代码片段插件

    function wpb_rsstutorial_featuredimage($content) {
    global $post;
    if(has_post_thumbnail($post->ID)) {
    $content = ‘<p>’ . get_the_post_thumbnail($post->ID) .
    ‘</p>’ . get_the_content();
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_featuredimage’);
    add_filter(‘the_content_feed’, ‘wpb_rsstutorial_featuredimage’);
    function wpb_rsstutorial_featuredimage($content) {
    global $post;
    if(has_post_thumbnail($post->ID)) {
    $content = ‘<p>’ . get_the_post_thumbnail($post->ID) .
    ‘</p>’ . get_the_content();
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_featuredimage’);
    add_filter(‘the_content_feed’, ‘wpb_rsstutorial_featuredimage’);
    function wpb_rsstutorial_featuredimage($content) {
    global $post;
    if(has_post_thumbnail($post->ID)) {
    $content = '<p>' . get_the_post_thumbnail($post->ID) .
    '</p>' . get_the_content();
    }
    return $content;
    }
    add_filter('the_excerpt_rss', 'wpb_rsstutorial_featuredimage');
    add_filter('the_content_feed', 'wpb_rsstutorial_featuredimage');
    

    此代码只是将您的特色图片添加到文章内容之前的段落中。

    6. 将自定义文章类型添加到您的RSS Feed

    许多WordPress网站使用自定义文章类型来创建与常规博客文章不同的部分。

    如果您使用不同的自定义文章类型发布大量内容,那么您需要将这些内容添加到您的主要供稿中。

    为此,您需要将以下代码添加到您的functions.php文件、站点特定插件中或使用代码片段插件

    function myfeed_request($qv) {
    if (isset($qv[‘feed’]) && !isset($qv[‘post_type’]))
    $qv[‘post_type’] = array(‘post’, ‘books’, ‘movies’);
    return $qv;
    }
    add_filter(‘request’, ‘myfeed_request’);
    function myfeed_request($qv) {
    if (isset($qv[‘feed’]) && !isset($qv[‘post_type’]))
    $qv[‘post_type’] = array(‘post’, ‘books’, ‘movies’);
    return $qv;
    }
    add_filter(‘request’, ‘myfeed_request’);
    function myfeed_request($qv) {
        if (isset($qv['feed']) && !isset($qv['post_type']))
            $qv['post_type'] = array('post', 'books', 'movies');
        return $qv;
    }
    add_filter('request', 'myfeed_request');

    此代码将两种自定义文章类型“书籍”和“电影”添加到主RSS Feed。确保将这些替换为您自己的自定义文章类型。

    7. 在RSS中添加附加文本以发布标题

    如果您创建多种类型的文章内容,在RSS中为文章标题添加额外的文本会很有帮助。

    例如,这可以帮助您的读者区分访客帖子、常规博客内容和赞助内容。

    这是可用于在标题中显示文章类别的代码片段:

    function wpb_rsstutorial_titlecat($content) {
    $postcat = “”;
    foreach((get_the_category()) as $cat) {
    $postcat .= ‘ (‘.$cat->cat_name . ‘)’;
    }
    $content = $content.$postcat;
    return $content;
    }
    add_filter(‘the_title_rss’, ‘wpb_rsstutorial_titlecat’);
    function wpb_rsstutorial_titlecat($content) {
    $postcat = “”;
    foreach((get_the_category()) as $cat) {
    $postcat .= ‘ (‘.$cat->cat_name . ‘)’;
    }
    $content = $content.$postcat;
    return $content;
    }
    add_filter(‘the_title_rss’, ‘wpb_rsstutorial_titlecat’);
    function wpb_rsstutorial_titlecat($content) {
    $postcat = "";
    foreach((get_the_category()) as $cat) {
    $postcat .= ' ('.$cat->cat_name . ')';
    }
    $content = $content.$postcat;
    return $content;
    }
    add_filter('the_title_rss', 'wpb_rsstutorial_titlecat');

    有关更多详细信息和示例,请参阅有关如何完全自定义WordPress网站RSS Feed的指南

    8. 允许用户通过电子邮件订阅RSS Feed

    并非所有用户都希望使用提要阅读器订阅您的文章。很多人更愿意通过电子邮件订阅。这就是为什么拥有电子邮件订阅很重要的原因之一。

    要自动发送RSS电子邮件,我们建议使用Sendinblue。它是一个受欢迎的电子邮件营销服务提供商,有一个永远免费的计划,每天最多发送300封电子邮件。

    Sendinblue

    设置电子邮件列表后,您可以在发布新博客文章时自动发送RSS电子邮件。

    有关更多详细信息,请参阅有关如何通知WordPress订阅者查阅新文章的教程。

    9. 允许用户订阅RSS Feed中的类别

    WordPress网站上的每个类别都会自动拥有自己的RSS Feed。如果您运行一个包含许多不同类别的大型博客,那么这会让您的读者只订阅他们感兴趣的类别。

    但是,很多用户没有意识到他们可以轻松订阅特定类别。您可以通过在您的网站上突出显示这一点,让您的读者更容易理解这一点。

    按分类订阅RSS Feed

    有关更多详细信息,请参阅我们的指南,了解如何为WordPress不同分类制作单独的RSS Feed

    10. 将自定义字段数据添加到您的RSS Feed

    自定义字段可让您向WordPress文章和页面添加额外的元数据。但是,此元数据不包含在您的默认RSS Feed中。

    要在您的RSS Feed中显示自定义字段,只需将以下代码片段添加到您的functions.php文件、特定于站点的插件中或使用代码片段插件

    function wpb_rsstutorial_customfield($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $custom_metadata = get_post_meta($postid, ‘my_custom_field’, true);
    if(is_feed()) {
    if($custom_metadata !== ) {
    // Display custom field data below content
    $content = $content.“<br /><br /><div>”.$custom_metadata.“</div>
    ;
    }
    else {
    $content = $content;
    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_customfield’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_customfield’);
    function wpb_rsstutorial_customfield($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $custom_metadata = get_post_meta($postid, ‘my_custom_field’, true);
    if(is_feed()) {
    if($custom_metadata !== ”) {
    // Display custom field data below content
    $content = $content.”<br /><br /><div>”.$custom_metadata.”</div>
    “;
    }
    else {
    $content = $content;
    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_customfield’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_customfield’);
    function wpb_rsstutorial_customfield($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $custom_metadata = get_post_meta($postid, 'my_custom_field', true);
    if(is_feed()) {
    if($custom_metadata !== '') {
    // Display custom field data below content
    $content = $content."<br /><br /><div>".$custom_metadata."</div>
    ";
    }
    else {
    $content = $content;
    }
    }
    return $content;
    }
    add_filter('the_excerpt_rss', 'wpb_rsstutorial_customfield');
    add_filter('the_content', 'wpb_rsstutorial_customfield');

    此代码检查是否正在使用自定义字段以及是否正在显示RSS Feed。之后,它将在文章内容下方添加自定义字段数据。

    11. 延迟文章出现在RSS Feed中

    延迟文章出现在您的RSS Feed中可以避免意外发布,并且可以帮助您击败内容抓取工具(如果这是您经常遇到的问题)。

    当您延迟文章出现在您的RSS Feed中时,您就给了搜索引擎时间在您的内容出现在其他地方之前对其进行爬网和索引。

    此外,您可以在发送给RSS 订阅者之前检查是否有任何拼写错误。

    为此,您需要将以下代码添加到您的functions.php文件、特定于站点的插件中或使用代码片段插件

    function publish_later_on_feed($where) {
    global $wpdb;
    if ( is_feed() ) {
    // timestamp in WP-format
    $now = gmdate(‘Y-m-d H:i:s’);
    // value for wait; + device
    $wait = ’10’; // integer
    // http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
    $device = ‘MINUTE’; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
    // add SQL-sytax to default $where
    $where .= ” AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, ‘$now’) > $wait “;
    }
    return $where;
    }
    add_filter(‘posts_where’, ‘publish_later_on_feed’);
    function publish_later_on_feed($where) {

    global $wpdb;

    if ( is_feed() ) {
    // timestamp in WP-format
    $now = gmdate(‘Y-m-d H:i:s’);

    // value for wait; + device
    $wait = ’10’; // integer

    // http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
    $device = ‘MINUTE’; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR

    // add SQL-sytax to default $where
    $where .= ” AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, ‘$now’) > $wait “;
    }
    return $where;
    }

    add_filter(‘posts_where’, ‘publish_later_on_feed’);

    function publish_later

  • 如何为WordPress每个自定义文章类型制作单独的RSS Feed

    自定义文章类型允许网站所有者添加他们自己独特的内容类型。这些帖子类型可以具有与文章或页面类似的功能,包括RSS Feed。

    在本教程中,我们将详细介绍如何为WordPress中的自定义文章类型制作单独的RSS Feed。

    如何为WordPress每个自定义文章类型制作单独的RSS Feed

    在WordPress中为自定义文章类型创建单独的RSS Feed

    默认情况下,WordPress会为您的网站生成多个RSS Feed。

    例如,您最近的所有博客文章都出现在您网站的主要RSS Feed中。可以通过将 /feed/ 添加到您的域名来访问此提要:

    https://example.com/feed/

    大多数初学者不知道的是,WordPress会为其网站的不同存档页面生成单独的RSS Feed。

    例如,它有针对类别、标签、作者和自定义文章类型的单独RSS Feed。

    假设您的网站上有一个名为电影的自定义文章类型。您可以通过访问文章类型存档页面来查看在该文章类型中创建的所有内容。

    https://example.com/movies

    自定义文章类型

    要查看RSS Feed,您需要做的就是在自定义文章类型存档URL旁边添加 /feed/。

    https://example.com/movies/feed/

    自定义文章类型存档Feed链接

    或者,您还可以通过将文章类型参数添加到您的WordPress主要RSS Feed来查看Feed。例如:

    https://example.com/feed/?post_type=movies

    然后,此URL将仅获取名为电影的自定义文章类型。

    自定义文章类型存档Feed源代码

    添加自定义文章类型RSS Feed的链接

    现在您知道如何访问您网站上任何自定义文章类型的RSS Feed,您可以使用该URL创建指向您的自定义文章类型Feed的链接。

    例如,您可能希望在自定义文章类型存档页面上显示图标或纯文本链接,以便您的访问者可以轻松订阅这些文章。

    最简单的方法是为您的WordPress主题中的自定义文章类型创建一个单独的模板。

    例如,如果您的自定义文章类型称为电影,那么您可以在WordPress主题中创建一个文件archive-{post_type}.php

    之后,您可以简单地从主题现有的archive.php模板中复制内容并开始自定义新模板。

    您可以使用以下代码简单地将纯HTML链接添加到您的文章类型存档Feed:

    <p><strong>Subscribe to: <a href=“https://example.com/movies/feed/”>Movies</a></strong></p>
    <p><strong>Subscribe to: <a href=”https://example.com/movies/feed/”>Movies</a></strong></p>
    <p><strong>Subscribe to: <a href="https://example.com/movies/feed/">Movies</a></strong></p>

    不要忘记将URL更改为您自己的文章类型Feed的URL。

    现在,此代码的问题在于您必须为该特定文章类型创建一个新模板文件。

    下一个方法将允许您为所有存档页面动态生成文章类型的RSS Feed链接。

    只需将以下代码添加到您的主题archive.php模板文件中。

    <?php if ( is_post_type_archive() ) {
    $post_type = get_post_type( get_queried_object_id() );?>
    <p><strong>Subscribe to: <a href=“<?php echo get_post_type_archive_link( $post_type ); ?>feed/”><?php post_type_archive_title(); ?></a></strong></p>
    <?php } ?>
    <?php if ( is_post_type_archive() ) {
    $post_type = get_post_type( get_queried_object_id() );?>
    <p><strong>Subscribe to: <a href=”<?php echo get_post_type_archive_link( $post_type ); ?>feed/”><?php post_type_archive_title(); ?></a></strong></p>
    <?php } ?>
    <?php if ( is_post_type_archive() ) {
    $post_type = get_post_type( get_queried_object_id() );?>
                    <p><strong>Subscribe to: <a href="<?php echo get_post_type_archive_link( $post_type  ); ?>feed/"><?php post_type_archive_title(); ?></a></strong></p>
    <?php } ?>

    此代码将简单地在文章类型的存档页面标题下方添加一个链接,鼓励用户订阅此特定内容类型。

    自定义文章类型Feed订阅链接

    我们希望本教程能帮助您了解如何在WordPress中为自定义文章类型创建单独的RSS Feed。您可能还会对关于优化WordPress网站RSS Feed的技巧感兴趣。

  • 如何完全自定义WordPress网站RSS Feed

    默认情况下,WordPress RSS Feed显示您最近发布的内容,并且没有选项可以为您的RSS Feed用户自定义该内容。

    在本教程中,我们将向您展示如何轻松添加内容并完全操作您的WordPress网站RSS Feed。

    如何完全自定义WordPress网站RSS Feed

    将自定义内容添加到WordPress网站RSS Feed

    将自定义内容添加到WordPress网站RSS Feed的最简单方法是使用WordPress插件的多合一SEO。它是市场上最好的WordPress SEO插件之一,可让您轻松优化网站SEO。

    您需要做的第一件事是安装并激活适用于WordPress的多合一SEO插件。激活后,系统将提示您设置插件。只需按照屏幕上的说明进行操作或查看我们的指南,了解如何为WordPress设置All in One SEO插件

    之后,您需要访问All in One SEO » General Settings页面并切换到RSS Content选项卡。

    All in One SEO插件RSS内容设置

    从这里您可以添加要在每个RSS Feed项目前后显示的内容。您可以使用智能标签向自定义内容添加链接和其他元数据。

    All in One SEO插件RSS内容自定义

    您还可以使用基本HTML以任何您喜欢的方式格式化您的自定义内容。

    一旦您对更改感到满意,请不要忘记单击“保存更改”按钮。

    All in One SEO现在会将您的自定义内容添加到每个RSS Feed项目。

    使用代码向WordPress网站RSS Feed添加内容

    上面提到的第一种方法是将自定义内容添加到WordPress的RSS Feed的最简单方法。但是,它会将内容添加到WordPress Feed中的所有项目。

    如果您想将内容添加到特定文章、选定类别中的文章或在RSS源中显示自定义元数据,该怎么办?

    接下来的几个步骤将帮助您使用自定义代码片段灵活地向RSS Feed添加内容。

    您可以使用自定义代码片段插件、通过functions.php文件或特定于站点的WordPress插件将这些代码片段添加到您的网站。

    让我们尝试一些在WordPress网站RSS Feed中手动添加自定义内容的示例。

    1. 将自定义字段中的数据添加到WordPress网站RSS Feed

    自定义字段允许您向WordPress文章和页面添加额外的元数据。但是,默认情况下,此元数据不包含在RSS Feed中。

    RSS Feed自定义字段

    这是一个片段,可用于在WordPress网站RSS Feed中检索和显示自定义字段数据。

    function wpb_rsstutorial_customfield($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $custom_metadata = get_post_meta($postid, ‘my_custom_field’, true);
    if(is_feed()) {
    if($custom_metadata !== ) {
    // Display custom field data below content
    $content = $content.“<br /><br /><div>”.$custom_metadata.“</div>
    ;
    }
    else {
    $content = $content;
    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_customfield’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_customfield’);
    function wpb_rsstutorial_customfield($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $custom_metadata = get_post_meta($postid, ‘my_custom_field’, true);
    if(is_feed()) {
    if($custom_metadata !== ”) {
    // Display custom field data below content
    $content = $content.”<br /><br /><div>”.$custom_metadata.”</div>
    “;
    }
    else {
    $content = $content;
    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_customfield’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_customfield’);
    function wpb_rsstutorial_customfield($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $custom_metadata = get_post_meta($postid, 'my_custom_field', true);
    if(is_feed()) {
    if($custom_metadata !== '') {
    // Display custom field data below content
    $content = $content."<br /><br /><div>".$custom_metadata."</div>
    ";
    }
    else {
    $content = $content;
    }
    }
    return $content;
    }
    add_filter('the_excerpt_rss', 'wpb_rsstutorial_customfield');
    add_filter('the_content', 'wpb_rsstutorial_customfield');

    此代码首先检查自定义字段是否包含数据并显示RSS Feed。之后,它只需附加内容全局变量并在内容下方添加自定义字段数据。

    2. 为RSS中的文章标题添加附加文本

    您想在RSS Feed中的某些文章的标题上显示附加文本吗?也许您想区分常规文章和来宾或赞助文章(软文)。

    以下是如何添加自定义内容以在RSS源中发布标题。

    示例 1:将自定义字段中的数据添加到RSS源文章标题

    首先,您需要将要显示的内容保存为自定义字段。例如,您可以添加guest_post 或sponsed_post自定义字段。

    之后,您可以将以下代码添加到您的网站。

    function wpb_rsstutorial_addtitle($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $gpost = get_post_meta($postid, ‘guest_post’, true);
    $spost = get_post_meta($postid, ‘sponsored_post’, true);
    if($gpost !== ) {
    $content = ‘Guest Post: ‘.$content;
    }
    elseif ($spost !== ){
    $content = ‘Sponsored Post: ‘.$content;
    }
    else {
    $content = $content;
    }
    return $content;
    }
    add_filter(‘the_title_rss’, ‘wpb_rsstutorial_addtitle’);
    function wpb_rsstutorial_addtitle($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $gpost = get_post_meta($postid, ‘guest_post’, true);
    $spost = get_post_meta($postid, ‘sponsored_post’, true);

    if($gpost !== ”) {
    $content = ‘Guest Post: ‘.$content;
    }
    elseif ($spost !== ”){
    $content = ‘Sponsored Post: ‘.$content;
    }
    else {
    $content = $content;
    }
    return $content;
    }
    add_filter(‘the_title_rss’, ‘wpb_rsstutorial_addtitle’);

    function wpb_rsstutorial_addtitle($content) {
    global $wp_query;
    $postid = $wp_query->post->ID;
    $gpost = get_post_meta($postid, 'guest_post', true);
    $spost = get_post_meta($postid, 'sponsored_post', true);
      
    if($gpost !== '') {
    $content = 'Guest Post: '.$content;
    }
    elseif ($spost !== ''){
    $content = 'Sponsored Post: '.$content;
    }
    else {
    $content = $content;
    }
    return $content;
    }
    add_filter('the_title_rss', 'wpb_rsstutorial_addtitle');

    此代码只是查找自定义字段。如果它们不为空,则它将自定义字段的值附加到RSS Feed中的文章标题。

    示例 2:将类别名称添加到RSS源中的文章标题

    对于此示例,我们将在文章标题中显示类别名称。

    只需将以下代码添加到您的网站:

    function wpb_rsstutorial_titlecat($content) {
    $postcat = “”;
    foreach((get_the_category()) as $cat) {
    $postcat .= ‘ (‘.$cat->cat_name . ‘)’;
    }
    $content = $content.$postcat;
    return $content;
    }
    add_filter(‘the_title_rss’, ‘wpb_rsstutorial_titlecat’);
    function wpb_rsstutorial_titlecat($content) {
    $postcat = “”;
    foreach((get_the_category()) as $cat) {
    $postcat .= ‘ (‘.$cat->cat_name . ‘)’;
    }
    $content = $content.$postcat;
    return $content;
    }
    add_filter(‘the_title_rss’, ‘wpb_rsstutorial_titlecat’);
    function wpb_rsstutorial_titlecat($content) {
    $postcat = "";
    foreach((get_the_category()) as $cat) {
    $postcat .= ' ('.$cat->cat_name . ')';
    }
    $content = $content.$postcat;
    return $content;
    }
    add_filter('the_title_rss', 'wpb_rsstutorial_titlecat');

    现在,它将在RSS Feed中显示类别和文章标题。例如,“湾区热门新餐厅(新闻)(旅游)”,其中新闻和旅游是类别。

    3. 将自定义内容添加到具有特定标签或类别的文章

    现在让我们假设您想添加自定义内容,但仅适用于在特定标签或类别下提交的文章。

    以下代码将帮助您轻松地向在特定类别和标签下提交的文章添加内容。

    function wpb_rsstutorial_taxonomies($content) {
    if( is_feed() ){
    // Check for posts filed under these categories
    if ( has_term( array( ‘travel’, ‘news’ ), ‘category’ ) ) {
    $content = $content.“<br /><br />For special offers please visit our website”;
    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_taxonomies’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_taxonomies’);
    function wpb_rsstutorial_taxonomies($content) {

    if( is_feed() ){

    // Check for posts filed under these categories
    if ( has_term( array( ‘travel’, ‘news’ ), ‘category’ ) ) {

    $content = $content.”<br /><br />For special offers please visit our website”;

    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_taxonomies’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_taxonomies’);

    function wpb_rsstutorial_taxonomies($content) {
     
    if( is_feed() ){
     
    // Check for posts filed under these categories
    if ( has_term( array( 'travel', 'news' ), 'category' ) ) {
     
    $content = $content."<br /><br />For special offers please visit our website"; 
     
    }
    }
    return $content;
    }
    add_filter('the_excerpt_rss', 'wpb_rsstutorial_taxonomies');
    add_filter('the_content', 'wpb_rsstutorial_taxonomies');

    您可以修改此代码以定位标签以及任何自定义分类法。以下是定位特定标签的示例:

    function wpb_rsstutorial_taxonomies($content) {
    if( is_feed() ){
    // Check for posts filed under these categories
    if ( has_term( array( ‘holidays’, ‘blackfriday’ ), ‘post_tag’ ) ) {
    $content = $content.“<br /><br />For special offers please visit our website”;
    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_taxonomies’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_taxonomies’);
    function wpb_rsstutorial_taxonomies($content) {

    if( is_feed() ){

    // Check for posts filed under these categories
    if ( has_term( array( ‘holidays’, ‘blackfriday’ ), ‘post_tag’ ) ) {

    $content = $content.”<br /><br />For special offers please visit our website”;

    }
    }
    return $content;
    }
    add_filter(‘the_excerpt_rss’, ‘wpb_rsstutorial_taxonomies’);
    add_filter(‘the_content’, ‘wpb_rsstutorial_taxonomies’);

    function wpb_rsstutorial_taxonomies($content) {
     
    if( is_feed() ){
     
    // Check for posts filed under these categories
    if ( has_term( array( 'holidays', 'blackfriday' ), 'post_tag' ) ) {
     
    $content = $content."<br /><br />For special offers please visit our website"; 
     
    }
    }
    return $content;
    }
    add_filter('the_excerpt_rss', 'wpb_rsstutorial_taxonomies');
    add_filter('the_content', 'wpb_rsstutorial_taxonomies');

    4. 将特色图片添加到RSS Feed

    默认情况下,您的WordPress网站RSS Feed不会显示文章的特色图片。您可以通过将特色图片手动添加到您的RSS Feed来更改它。

  • 如何为WordPress每个类别制作单独的RSS Feed

    默认情况下,WordPress网站RSS Feed仅显示您最近的博客文章。但是,如果您对其他内容使用自定义文章类型,那么您可能也希望将它们包含在您的主要RSS Feed中。

    在本教程中,我们将向您展示如何轻松地将自定义文章类型添加到您的主要WordPress网站的RSS Feed。

    如何为WordPress每个类别制作单独的RSS Feed

    为什么要在WordPress网站RSS Feed中添加自定义文章类型?

    默认情况下,WordPress带有两种常用的内容类型,称为posts和pages。但是,如果需要,您也可以创建自定义文章类型以添加更多内容类型。

    例如,电影评论网站可能希望使用适合该特定内容类型的自定义分类法为电影评论创建自定义文章类型。

    RSS Feed中添加自定义文章类型

    现在,您的自定义文章类型可以拥有自己的RSS Feed,用户可以通过/feed/在自定义文章类型存档URL的末尾添加来访问该提要。

    https://example.com/custom-post-type/feed/
    https://example.com/movies/feed/

    但是,自定义文章类型提要不容易发现。如果用户在其订阅源阅读器中输入您网站的URL,它将显示您的主要WordPress RSS订阅源的订阅选项。

    WordPress RSS订阅源

    话虽如此,让我们看看如何通过将自定义文章类型添加到您的WordPress主要RSS Feed来轻松解决该问题。

    将所有自定义文章类型添加到您的WordPress网站RSS Feed

    此方法允许您添加所有公开可用的文章类型以包含在您的WordPress主RSS Feed中。

    您需要将代码添加到您的WordPress网站。如果您之前没有这样做过,请查看我们的指南,了解如何在WordPress中添加自定义代码片段

    只需将以下代码复制并粘贴到主题的functions.php文件或特定于站点的插件中即可。

    function myfeed_request($qv) {
    if (isset($qv[‘feed’]))
    $qv[‘post_type’] = get_post_types();
    return $qv;
    }
    add_filter(‘request’, ‘myfeed_request’);
    function myfeed_request($qv) {
    if (isset($qv[‘feed’]))
    $qv[‘post_type’] = get_post_types();
    return $qv;
    }
    add_filter(‘request’, ‘myfeed_request’);
    function myfeed_request($qv) {
    if (isset($qv['feed']))
    $qv['post_type'] = get_post_types();
    return $qv;
    }
    add_filter('request', 'myfeed_request');

    此代码通过将所有公开可见的帖子类型添加到查询中来简单地修改默认的WordPress查询以获取RSS Feed。

    这将允许您将页面以及所有其他自定义文章类型添加到您的主要WordPress RSS Feed中。

    在主 WordPress RSS 提要中添加特定的自定义帖子类型

    这种方法更灵活,允许您选择要包含到主要WordPress RSS Feed中的文章类型。

    只需将以下代码复制并粘贴到您的WordPress网站中即可。

    function myfeed_request($qv) {
    if (isset($qv[‘feed’]) && !isset($qv[‘post_type’]))
    $qv[‘post_type’] = array(‘post’, ‘movies’, ‘books’);
    return $qv;
    }
    add_filter(‘request’, ‘myfeed_request’);
    function myfeed_request($qv) {
    if (isset($qv[‘feed’]) && !isset($qv[‘post_type’]))
    $qv[‘post_type’] = array(‘post’, ‘movies’, ‘books’);
    return $qv;
    }
    add_filter(‘request’, ‘myfeed_request’);
    function myfeed_request($qv) {
        if (isset($qv['feed']) && !isset($qv['post_type']))
            $qv['post_type'] = array('post', 'movies', 'books');
        return $qv;
    }
    add_filter('request', 'myfeed_request');

    您现在可以访问您的WordPress RSS Feed以查看此代码的运行情况。

    我们希望本文能帮助您将自定义文章类型添加到您的主要WordPress RSS Feed中。您可能还想查看我们优化WordPress网站RSS Feed的技巧,或查看这些适用于WordPress博主的最佳 RSS Feed插件