在wp-admin中操作主题列表

时间:2011-09-26 作者:Dunhamzzz

我正在运行一个多站点网络,安装并激活了100多个主题。有没有办法操纵wp admin中可用主题的列表,以便某些主题首先出现在列表中?(一种“特色”或“推荐”)在前9个字母之后,或者按照默认字母顺序排列,就可以了。

显然,在谷歌上搜索“wordpress”和“themes”这两个词在这种情况下是毫无结果的。

2 个回复
最合适的回答,由SO网友:Dunhamzzz 整理而成

想出了一个愚蠢但有效的办法,让某些主题排在榜首。因为主题是按字母顺序列出的,所以可以通过更改主题名称来操纵输出,特别是在主题名称的前面添加一个符号,它将显示在列表的开头。

我选择了一个不间断的空间  因为它不会在视觉上影响名称。您也可以尝试使用不可见的ascii字符。HTML被剥离了,所以不用费心尝试了。

/*
Theme Name:  Ribbon
Description: A customisable theme

SO网友:Roman

可能不需要编辑核心文件。我还没有找到你可以用的钩子。

如果你查一下文件wp-admin/themes.php 并按照程序流程进行操作,直到显示主题列表,您可以找到该类WP_Themes_List_Table 在里面wp-admin/includes/class-wp-themes-list-table.php.

此类生成HTML列表。遵循prepare_items() 方法,WordPress从函数中获取可用主题的列表get_themes() 它也没有钩子。

您可以做的是将结果限制为只允许使用过滤器的某些主题allowed_themes 在函数中调用get_allowed_themes().

结束