关于WordPress中分类的操作问题思考
  • 3年前
  • 关于WordPress中分类的操作问题思考696
  • WordPress运行时间长了,文章数量非常多,而且分类也可能会越来越多,当你想要对某个分类下的文章进行处理的时候,常规的操作基本都是按照下方的流程来的:

    这套操作下来,基本可以满足大多数人的需求,但是我们都知道,文章列表每页显示的数量依赖服务器的配置,配置高,显示数量可以调高一点,但是如果比较底的配置。那么可能就需要很长时间去加载了。

    而且上面的操作仅限于将所有的分类增加指定分类,也就是图片中的第三步,你勾选的分类都会叠加到对应的文章上面去,而不是直接将文章设定为勾选的分类,所以就会出现一种比较尴尬的情况,如果你想要设定某些文章为某个指定分类,可能需要的操作就是新创建一个分类,然后将文章设定为这个分类,接着删除原始分类。

    同样的,如果你打算将一批含有指定分类的文章删除其中共有的一个分类,我相信很多新手可能就开始不知道如何下手了。

    如果你对于上面两种情况有需求或者考虑过上面的问题,那么可以继续往下看。

    思路方案

    想要实现这个功能,我们需要考虑三个方面:直接设定为某个方案、增加某个分类、删除某个分类

    直接设定

    将所有分类直接设定为某个分类,其实非常简单,只需要利用WordPress中一个函数即可:wp_set_post_categories()

    通过函数我们可以了解到其功能就是我们需要的,将指定文章设定为某个分类即可。其中参数post_categories是一个数组参数,言外之意可以设定为特定的多个分类。

    实践方面我这边讲解大概,大概步骤如下: 1.通过WP_QUERY()函数获取指定分类的文章,其中查询参数中的分类推荐使用category__in 2.通过标准循环针对所有文章进行处理 3.标准循环中的处理方式使用wp_set_post_categories()即可

    大概思路如上,如果你有兴趣的话,可以折腾一下,折腾不起来的话,可以继续看到最后。

    增加指定分类

    增加指定分类的情况相比上一个直接设定的情况可能多一个步骤,就是需要将增加的分类和文章原有的分类进行合并,那么思路如下: 1.通过WP_QUERY()函数获取指定分类的文章,其中查询参数中的分类推荐使用category__in 2.通过标准循环针对所有文章进行处理 3.通过wp_get_post_categories()函数获取每篇文章的分类 4.通过PHP函数array_merge将第3步中获取的数组结果与指定分类数组进行合并 4.标准循环中的处理方式使用wp_set_post_categories()即可

    如果对于上面的步骤不明白的,没关系,下面会有更简单的方法。

    删减指定分类

    增加和删除的思路基本不变,只不过其中使用的PHP函数不再是array_merge而是array_diff

    新手专属

    如果上面的思路你的脑袋明白了,但是手不明白,那么可以直接使用一个名为Batch Cat的插件,该插件可以完美实现上面所有的功能,只需要你进行几次点击即可,非常适合新手,其次,按照上面的思路,如果你有能力,同样可以针对标签进行操作。

    插件界面如下:

    我个人方面将该功能集成至本主题,最终效果如下:

  • 联系我们
  • 有任何疑问欢迎联系我们
  • WP新手学园
  • 关于WordPress中分类的操作问题思考
  • 邮箱:2830776172#qq.com(#换成@)
  • 回复时间:9:00-19:00
  • 如果提问.请图文并茂,详细描述问题
  • 关于WordPress中分类的操作问题思考
  • 微信号:wpxsxy_official
  • 仅支持付费解决问题
  • *并非所有问题都会被回复
  • 关于WordPress中分类的操作问题思考
  • QQ:2830776172
  • 回复时间:9:00-19:00
  • QQ仅支持付费提问,时间有限,尽情谅解
  • 关于WordPress中分类的操作问题思考
  • QQ群:198768181
  • 有问题可以进去提问,寻求群友帮助
  • *并非所有问题都会被回复
  • 关于WordPress中分类的操作问题思考
  • 咸鱼:WP新手学园
  • 如果对于直接交易不放心,可以走闲鱼
  • *咸鱼价格不作为最终交易价格
  • 备案号:鄂ICP备2021011647号-1