用wordpress怎样让分类文章不显示在首页。

这是百度经验给出方法:

https://jingyan.baidu.com/article/597a064387174a312b52430e.html

但是这样做挺麻烦的,你首先得找到你的index.php文件。对,wp文件里面就有不止一个index.php文件。怎么具体在哪个位置也没说。

一般这个就是你要找的文件了:

wp\wp-content\themes\你启用得主题模块名\index.php

找到之后打开,找到代码:

 <?php if ( have_posts() ) : ?>
	<?php /* Start the Loop */ ?>
	<?php while ( have_posts() ) : the_post(); ?>

这里需要提一下的就是,到本文发表的时候,才发现以上代码作了略微的改动,以前的版本上面这几句代码是这样写的:

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

所以你看到其他解决方案写的代码略有不同,没关系,其实以上两句代码意思都是相同的。你只需要按百度经验所说的在下面添加一下代码就行:

<?php if (is_home() && in_category('1') continue; ?>

其中的in_category(‘1’) 这里的数字1就是你不想显示出来的分类的ID。你不想显示哪个分类页面,就输入该页面的ID就行。一般都需要屏蔽掉首页以外的分类目录内容。你就重复该代码并把想对应的ID输进去就行。

如何查看分类id呢? 进入wordpress的分类目录,把鼠标放到右侧的分类名称或者名称下面的编辑按钮,这时浏览器的状态栏就会显示url地址。仔细观察,url地址中就会显示出该分类的ID。这个百度经验上讲得比较具体,建议去参考一下。

按以上方法修改了index.php文件之后,用ftp上传覆盖掉以前的文件就ok了。

不过这样做起来稍显发杂,你直接进入wordpress的后台,点击进入外观—-主题编辑器,找到首页模板,直接找到一下代码:

 <?php if ( have_posts() ) : ?>
        <?php /* Start the Loop */ ?>
        <?php while ( have_posts() ) : the_post(); ?>

在按上面说的办法添加代码并保存,就ok了。我就用是这样的办法达到首页不显示分类目录文章的方法,实测有效。

    <?php if ( have_posts() ) : ?>
        <?php /* Start the Loop */ ?>
        <?php while ( have_posts() ) : the_post(); ?>

        <?php if (is_home() && in_category('2') ) continue; ?>
        <?php if (is_home() && in_category('3') ) continue; ?>
        <?php if (is_home() && in_category('4') ) continue; ?>
        <?php if (is_home() && in_category('5') ) continue; ?>
        <?php if (is_home() && in_category('6') ) continue; ?>
        <?php if (is_home() && in_category('7') ) continue; ?>
        <?php if (is_home() && in_category('8') ) continue; ?>
        <?php if (is_home() && in_category('9') ) continue; ?>
        <?php if (is_home() && in_category('10') ) continue; ?>

希望这篇文章能对您也有所帮助。

发表评论

电子邮件地址不会被公开。