WordPress JustNews子主题创建教程

3.7
(13)

我们在用一些Wordpress主题,比如justnews主题时,经常需要修改一些源码来达到自己的某些个性化功能。比如,最起码的,每个人肯定都会去修改function.php文件。甚至,有些人会修改文章模板、页面模板,或者往一些模板里加入自己的广告位。

Wordpress JustNews子主题创建教程

但是,justnews又是一款经常更新的主题,每次改完主题想要更新,都会费点劲,甚至可能忘记备份,导致以前的修改全部都丢失了,又得重新修改一遍。

今天,古哥就给各位带来通过创建Wordpress子主题,来修改父级主题justnews的详细教程。

Wordpress JustNews子主题创建教程

首先,在Wordpress主题目录新建一个justnews-child文件夹,作为子主题目录。

然后,在子主题目录新建一个style.css文件,内容如下:

/*
    Theme name: JustNews Child
    Template: justnews
*/
/* 引入父主题样式 */
@import url("../justnews/css/style.css");

注意:

  • Theme name为子主题名称,这里可以随意填写。
  • Template为父主题的目录名,必须为justnews(注意全部为小写),如果你要创建其他主题的子主题,也是一样的方法
  • 最后,要引入父主题的css文件

到这里,你就可以在后台正常启动子主题了。但是,我们没做任何改变。还是用的父主题的各种php模板。

Wordpress JustNews子主题创建教程

下面,我们开始自定义子主题:

首先,在子主题目录新建一个function.php文件,内容如下:

<?php
//评论回复通知
function comment_mail_notify($comment_id) { 
 $comment = get_comment($comment_id);
 $parent_id = $comment->comment_parent ? $comment->comment_parent : '';
 $spam_confirmed = $comment->comment_approved; 
 if (($parent_id != '') && ($spam_confirmed != 'spam')) { 
 $wp_email = 'no-reply@' . preg_replace('#^www.#', '', strtolower($_SERVER['SERVER_NAME'])); //改为你的邮箱 
 $to = trim(get_comment($parent_id)->comment_author_email); 
 $subject = '[' . get_option("blogname") . '] 您的留言有了新回复'; 
 $message = ' 
 <div style="width: 60%;margin: 0 auto"> 
 <div style="font-size: 28px;line-height: 28px;text-align: center;"><p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p></div> 
 <div style="border-bottom: 1px solid #eee;padding-top: 10px;"> 
 <p style="color: #999;">您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:</p> 
 <p style="font-size: 18px;">' . trim(get_comment($parent_id)->comment_content) . '</p> 
 </div> 
 <div style="border-bottom: 1px solid #eee;padding-top: 10px;"> 
 <p style="color: #999;">' . trim($comment->comment_author) . ' 给您的回复:</p> 
 <p style="font-size: 18px;">' . trim($comment->comment_content) . '</p>
 <p style="text-align: center;font-size: 12px;padding-bottom: 20px;"><a style="border: 1px solid #3297fb;color: #3297fb;padding: 7px 14px;text-decoration: none;-moz-border-radius: 4px;-webkit-border-radius: 4px;border-radius:4px;" href="' . esc_attr(get_comment_link($parent_id, array('type' => 'comment'))) . '">点击查看</a></p> 
 </div> <div style="font-size: 12px;color: #999;text-align: center;"> 
 <p>此邮件由系统自动发送,请勿回复</p> 
 <p>© <a href="https://iymark.com" style="color: #999;text-decoration: none;">' . get_option('blogname') . '</a></p> 
 </div> 
 </div>'; 
 $from = "From: \"" . get_option('blogname') . "\" <$wp_email>"; 
 $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n"; wp_mail( $to, $subject, $message, $headers ); } } 
add_action('comment_post', 'comment_mail_notify');
//评论回复通知结束
?>

以上代码,添加了评论回复自动发送邮件的功能。这里,只是做了一个演示功能。可以看出来,新建的function.php不用复制父主题的function.php文件,而是只要新建一个,往里面添加自定义功能即可。模板如下:

<?php
//自定义功能
?>
Wordpress JustNews子主题创建教程

到此,基本满足你可以随意添加function功能了。下面,开始教你用子主题修改父主题的任意php文件。

只需要在父主题里复制你想要修改的某个php文件,然后在子主题相同目录放入该php文件。最后,我们直接修改子主题里的这个php文件,即可修改主题的该php文件。比如我们要修改网站的底部文件:footer.php

从父主题复制footer.php,然后在子主题粘贴该文件。修改立马的内容,就可以达到自定义footer.php文件了。

其他php文件修改方法一致。

注意事项:

  • style.css是必须引入的子主题说明文件
  • function.php是功能性php,不能直接从父主题复制,只要往里面加你想添加的功能就可以了
  • 其他php文件,复制到子主题修改就可以了。

有关任何子主题的问题,都可以下方评论

共计13人评分,平均3.7

到目前为止还没有投票~

很抱歉,这篇文章对您没有用!

让我们改善这篇文章!

告诉我们我们如何改善这篇文章?

原创文章,作者:古哥,转载需经过作者授权同意,并附上原文链接:https://iymark.com/articles/892.html

(2)
微信公众号
古哥的头像古哥管理团队
上一篇 2020年11月21日 19:38
下一篇 2020年11月24日 00:47

你可能感兴趣的文章

发表回复

登录后才能评论
微信小程序
微信公众号