WordPress让插件随主题一同启用
日期:
标签:WordPress教程
如需帮忙改代码,或者WordPress二次开发、PHP网站建设等需求,可联系我购买付费服务: 点此联系我
在编写一个主题的时候,可能有些功能并不一定要在主题中实现,而是要借助一些插件来实现。那么我们如何做到在启用主题的时候,同时启用某个插件呢?
我们可以在主题的functions.php中添加以下代码(这里以akismet为例):
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
// 判断插件是否已经启用
if (is_admin() && current_user_can('activate_plugins')
&& !is_plugin_active(ABSPATH . 'wp-content/plugins/akismet/akismet.php')) {
// 启用插件
activate_plugin(ABSPATH . 'wp-content/plugins/akismet/akismet.php');
}
首先我们需要include一下plugin.php,因为我们用到的两个函数is_plugin_active()和activate_plugin()都是在plugin.php中定义的,而主题文件不会自动引用这个文件。
接着我们需要判断当前页面是否是后台,同时为了安全考虑,我们需要用current_user_can()判断当前用户是否有启用主题的权限。最后,判断插件是否已启用,这里使用插件主文件的路径,何为插件主文件呢?这个文件在插件目录下,一般与插件同名,用文本编辑器打开,一般会看到类似注释:
/*
Plugin Name: **
Plugin URI: **
Description: **
Version: **
Author: **
*/
需要提醒的是,主题发布记得附带插件或叮嘱用户下载好插件。
参考文章:
Function Reference/is plugin active
-- 完 --
本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
原文出处:露兜即刻 https://www.ludou.org/how-to-activate-plugin-automatically-in-the-theme-wordpress.html
这个功能还是不错的。
如果改用户没有下载这个插件…
@Tokin 那么啥事没有。
@Ludou ludou,我有个问题想问一下,比如知道分类ID为3,怎么才能获取这个分类名称呢?这个问题我反复搜了N次,也没找到答案
@Tokin
@Ludou 谢谢啦,我去添加到我主题上去
大哥,如何在query_posts循环体内获取每篇文章的评论数量,是单纯的数值,不是comments_popup_link这种。。。。请问如何写
@heasily get_comments_number()
请问query_posts循环体可用的参数有哪些?有详细的介绍页面吗
@heasily http://codex.wordpress.org/Function_Reference
http://www.google.com
那如果我在wp_posts新建了一个字段(比如:old_comment_count),我在这个循环体内该 怎么获取old_comment_count?
@heasily https://www.ludou.org/wordpress-add-post-column.html
确实是个不错的想法,以前还真没考虑到。不过我一般都是尽量少用插件
露兜元旦闲了,发文章也多了。
祝新年快乐。
这个技巧可以在写主题的时候学习加上一下,如果该主题不存在可以弹出对话框提醒用户。
博主,请教你一个问题,就是我自定义了一个产品类,产品类增加了像文章的那种标签代表产品的品牌,但是页面不能重写,请问是什么原因?具体请参看http://www.dgz88.com/brand/niulaixiang/
@小时候爱玩 不太明白你的问题,如果是指post type,可以参考这篇文章:
http://justintadlock.com/archives/2010/08/20/linking-terms-to-a-specific-post
@Ludou 主要是页面不能重写的问题,看了你给的页面好像不是一样的问题
以后做主题时可以用~
有时候发布不了评论
@heasily 最近主机有点煞笔
xxx.com/?author=11这样的URL请问如何添加 xxx.com/?author=11&fans 这样的字段,让该用户界面显示其它内容,比如查看该用户关注的东西。该如何操作哦?就是include该用户的FANS.PHP 页面。。。。。URL上如何设置?
@heasily 重复的问题哦
大哥,侧边栏如何获取用户归档页的用户ID?还有分类ID
@heasily <?php
// 如果当前页是分类页
$cat_obj = $wp_query->get_queried_object();
$thisCat = $cat_obj->term_id; //分类id
?>
用户id:
<?php
global $user_ID;
echo $user_ID; ?>
@Ludou get_the_author_meta('ID')这个好像也可以,不知道会不会比 <?php
global $user_ID;
echo $user_ID; ?>更省内存
@heasily 不清楚
wordpress使用固定链接后,如何通过类似&qqq=1的URl传值哦?
@heasily 我使用了$_GET['XX']获得了这个传值问题了。谢谢大哥
比如字段中有 1,11, 我使用REPLACE(follow_man, '1,', '' ) 它会把,11,删除掉,只剩下1 请问如何完全匹配,只删除完全匹配的数字和逗号哦?
@heasily REPLACE(follow_man, ',1,', ',' )
字段中有 1,11, 我使用REPLACE(follow_man, '1,', '' ) ,它会把1,1,都删除掉,请问如何完全匹配哦,只删除1, 保留11,
@heasily 能不能不发表相同的问题?!
看博客侧边栏的返回顶部,有点类似天猫。。
@唯美网 本来就是天猫的图标
插件选项 及设置 可以保存吗?
@xuanxi 默认的选项和设置会随插件启动而保存,但这不是绝对,取决于插件代码怎么写的。
一般的插件选项及设置都需要用户自行设置并保存,自动保存的都没得选,如何称得上"选项"
如果你想如何给插件添加选项,可以google:wordpress 插件 选项
请问露兜大大 如何将插件与主题整合到一起啊 有这方面的教程吗