【WordPress】如何给 WP 增加单篇文章的分页功能
目前的 WordPress 虽然内核早已支持文章分页功能,但后台编辑器的分页按钮一直被注释掉,包括官方附带模板在内的绝大多数模板也并不支持文章分页功能。这里提供一些代码帮助你修改模板使你的 WordPress 前端支持单文章分页符的显示,后台编辑器上也添加分页符添加按钮等功能,而重要的是不涉及 WordPress 核心代码,未来升级 WordPress 将不需要修改这些代码……
一、首先是为后台的管理页面添加一个 JavaScript 的入口,代码添加于主题的 functions.php 文件中:
1 2 3 | if(is_admin()){ wp_enqueue_script('admins', WP_CONTENT_URL.'/.../jquery.admin.dev.js', array('jquery'), '0.0.9', true); } |
其实直接添加后面的 js 代码到管理页底部也可以,但为了以后为后台管理页添加 js 的方便,还是单独放一个文件吧。这里用到了 WordPress 中用来引入 JavaScript 的 wp_enqueue_script 函数和判断是否是管理页面的 is_admin 函数。
二、然后是为文章 HTML 编辑器添加 nextpage 按钮,代码添加到上面引入的 admin.dev.js 文件中:
1 2 3 4 5 6 7 8 9 | if(anyBar = document.getElementById("ed_toolbar")){ var barSize = edButtons.length; var barLast = anyBar.lastChild; edButtons[edButtons.length] = new edButton("ed_next","page","<! --nextpage-- >","","n"); while( barLast.nodeType != 1 ){ barLast = barLast.previousSibling; } barLast = barLast.cloneNode(true); barLast.id = "ed_pag"; barLast._idx = barSize; barLast.value = "PAGE"; barLast.title = ""; barLast.onclick = function(){ edInsertTag(edCanvas, this._idx); return false; } anyBar.appendChild(barLast); } |
其实打开 wp-includes 里面 js 目录下的 quicktags.dev.js 会发现里面原本已经有 nextpage 按钮的代码但被注释了,约在 130 行左右,上面用到了一些现成的接口,会把一个 nextpage 按钮添加到 HTML 编辑器的最后面,这样可以在 HTML 编辑器模式非常方便的插入用于分页的 nextpage 标记。上面代码中的 nextpage 按钮两边的空格是为了防止 WordPress 文章输出为注释加的,实际应用时需要删掉。
三、最后是为分页链接提供显示位置,修改模板文件在文章内容输出的后面添加代码,通常是 index.php 中的 the_content 函数输出内容之后,添加一个 wp_link_pages 函数即可,具体的一些函数参数可从 WordPress 网站参考。
本文网址:http://anyLiv.com/blog/1180 转载需注明出处!
This site is licensed under a Creative Commons BY-NC-SA 3.0 License.
本站使用 创作共用版权协议 转载本站内容也必须遵循"署名-非商业性使用-相同方式共享"的共同创作协议。