如何作wordpress 主题

你可以参考

老外写的教程很细致,水煮鱼把他翻译了,也很详尽

后台不需要重新做.

不过wp的主题制作相对还是复杂些吧,我同意kris,*好还是懂点php.

你也可以下载sandbox,是老外写的空白wp模版,你在此基础上编写可以省很多事情.写写css文件和制图片就可以了.

1、创建所需的文件

在进行主题定制前,应该首先创建一个可供自定义的“设置选项页面”。创建设置选项页的代码需要放置在主题目录下的functions.php文件中。如果我们的模板名为“OptionPage”,那么functions文件的路径为:wp-contentthemesOptionPagefunctions.php。

我们不需要让wordpress手动加载它,在执行时wordpress会自动加载。

2、建立设置选项页

首先**步需要在后台建立一个空白页面供我们使用。我们通过add_aaction来实现这一步。Actions可以在wordpress执行时的特定时间被响应,例如,当在控制面板创建菜单时,admin_menu就会被响应执行。因此,可以利用这些来实现我们所需的功能。这是我们创建选项页的*基本的功能。

<?php

//设置选项页

function themeoptions_admin_menu()

{

//在控制面板的侧边栏添加设置选项页链接

add_theme_page(“主题设置”,“主题选项”,‘edit_themes’, basename(__FILE__),‘themeoptions_page’);

}

function themeoptions_page()

{

//设置选项页面的主要功能

}

add_action(‘admin_menu’,‘themeoptions_admin_menu’);

?>

themeoptions_admin_menu()是在控制面板的侧边栏中添加一个链接,指向我们创建的选项页:themeoptions_page。

add_theme_page()的参数为:

页面标题:主题设置

菜单标题:主题选项(p.s.为了区分显示,页面与菜单标题我做了不同我命名)

作用功能:edit_themes;

Handle(句柄):当前文件;

执行的函数:themeoptions_page;

现在后台控制面板侧边栏的处就多了一个“主题设置”的菜单,但是现在还是空白的,我们后面要实现的定制内容就在这个空白页面上创建。

3、添加选项和字段

现在我们就可以在刚创建的空白页面上添加我们的选项和字段。这个页面你可以根据自己的需要进行样式风格化,但在本教程中我们将使用wordpress默认的类,这样可以节省我们的时间并且看起来更加原生。

页面内容的代码需包含在 themeoptions_page()函数内。首先,我们先添加一个class=”wrap”的div容器;然后,在头部添加一个默认图标作为作为页面标题;*后是设计表单。

<div class=“wrap”>

<div id=“icon-themes” class=“icon32″><br/></div>

<h2>主题设置</h2>

<form method=“POST” action=“”>

<input type=“hidden” name=“update_themeoptions” value=“true”/>

<p><input type=“submit” name=“submit” id=“submit” class=“button button-primary” value=“保存更改”></p>

</form>

</div>

在表单中,首先我们需要添加一个**的值,通过它来检查更新是否已经提交。然后添加一个提交按钮,这里我也使用wordpress默认的按钮样式。现在的效果为:

现在我们已经创建了设置选项页的基本结构,下面我们开始根据之前制定的内容进行完善:

首先,我们要允许主题使用者可以更改颜色方案。对于这一点,我们需要一个下拉列表提供可用的**方案。

其次,增加两个广告位的内容,我们需要增加两个文本框来输入图片的URL及广告链接URL。

*后,用户可选择是否显示搜索框。这一点,我们通过添加复选框来实现。

代码如下:

function themeoptions_page()

{

//这是产生主题选项页面的主要功能

?>

<div>

<div id=“icon-themes”><br/></div>

<h2>主题设置</h2>

<form method=“POST” action=“”>

<input type=“hidden” name=“update_themeoptions” value=“true”/>

<h4>主题**方案</h4>

<select name=“colour”>

<?php$colour= get_option(‘mytheme_colour’);?>

<option value=“gray”<?php if($colour==’gray’){ echo‘selected’;}?>>灰色</option>

<option value=“blue”<?php if($colour==’blue’){ echo‘selected’;}?>>浅蓝</option>

<option value=“pink”<?php if($colour==’pink’){ echo‘selected’;}?>>粉红</option>

</select>

<h4>图片广告位(1)</h4>

<p><input type=“text” name=“ad1image” id=“ad1image” size=“32” value=“<?php echo get_option(‘mytheme_ad1image’);?>”/>广告图片</p>

<p><input type=“text” name=“ad1url” id=“ad1url” size=“32” value=“<?php echo get_option(‘mytheme_ad1url’);?>”/>广告链接</p>

<h4>图片广告位(2)</h4>

<p><input type=“text” name=“ad2image” id=“ad2image” size=“32” value=“<?php echo get_option(‘mytheme_ad2image’);?>”/>广告图片</p>

<p><input type=“text” name=“ad2url” id=“ad2url” size=“32” value=“<?php echo get_option(‘mytheme_ad2url’);?>”/>广告链接</p>

<h4><input type=“checkbox” name=“display_search” id=“display_search”<?php echo get_option(‘mytheme_display_search’);?>/>显示搜索框</h4><p><input type=“submit” name=“bcn_admin_options” value=“更新数据”/></p>

</form>

</div>

<?php

}

到这里选项页面的内容就已经基本构建完毕了。

4、数据库更新

到目前为止,我们已经创建了一个主题选项页面,下一步要做的就是如何将数据透过POST提交的wordpress数据库。要做到这一点,需要创建一个新的功能函数themeoptions_update(),这个函数将会被themeoptions_page()调用,所以将下面的代码添加到themeoptions_page()函数的*上面。

if($_POST[‘update_themeoptions’]==’true’){ themeoptions_update();}

下一步是增加一个更新函数。

function themeoptions_update()

{

//数据更新验证

update_option(‘mytheme_colour’,$_POST[‘colour’]);

update_option(‘mytheme_ad1image’,$_POST[‘ad1image’]);

update_option(‘mytheme_ad1url’,$_POST[‘ad1url’]);

update_option(‘mytheme_ad2image’,$_POST[‘ad2image’]);

update_option(‘mytheme_ad2url’,$_POST[‘ad2url’]);

if($_POST[‘display_search’]==’on’){$display=‘checked’;} else{$display=”;}

update_option(‘mytheme_display_search’,$display);

}

5、调用选项定制主题

我们主题的默认样式文件为style.css,如果使用其他的**方案,我们需要建立相应的样式文件,例如本例中的blue.css、pink.css,style.css为默认的灰色。

为了切换**方案样式表,需要在主题header中加入以下代码:

<link rel=“stylesheet” href=“<?php bloginfo(‘stylesheet_directory’);?>/default.css” type=“text/css”>

<link rel=“stylesheet” href=“<?php bloginfo(‘stylesheet_directory’);?>/<?php echo get_option(‘mytheme_colour’);?>.css” type=“text/css”>

增加广告位图片—在你想要放置广告的地方添加以下代码:

<a href=“<?php echo get_option(‘mytheme_ad1url’);?>”><img src=“<?php echo get_option(‘mytheme_ad1image’);?>” height=“125” width=“125”/></a>

<a href=“<?php echo get_option(‘mytheme_ad2url’);?>”><img src=“<?php echo get_option(‘mytheme_ad2image’);?>” height=“125” width=“125”/></a>

是否显示搜索框—在需要放置搜索框的地方添加以下代码,当用户选择显示搜索框时会显示,否则则不显示:

<?php if( get_option(‘mytheme_display_search’)==‘checked’){?>

<h3>搜索框</h3>

<form method=“get” id=“searchform” action=“<?php echo esc_url( home_url(‘/’));?>”>

<input type=“text” name=“s” id=“s” placeholder=“<?php esc_attr_e(‘Search’,’85Ryan’);?>”/>

<input type=“submit” name=“submit” id=“searchsubmit” value=“搜索”/>

</form>

<?php}?>

首先wordpress本身就自带手机主题

Wordpress这个程序非常好,不仅有自动手机等移动端的自适应功能,还有很多模版供我们使用,其实你可以百度搜索wordpress主题就有很多了,而且都是手机的自适应的主题。

其实建议用收费的模版主题

如果你打算长期建站使用,也打算长期运营您的网站我建议您购买收费的主题,我自己的主题就是知更鸟(begin)手机什么的都是自适应的,截图给你看看。

*后:如果你自己没什么程序基础也就是对HTML5、PHP、css这些程序语音不懂的话我建议您不要浪费时间了,除非您现在是在校的学生而且刚好学习这个专业,想多学习学习,那到是可以,学习方法也很简单,百度搜索 wordpress主题教程多的去。

总结:手机主题这些,如果你不是专业的建议不要去浪费时间,直接付费的也不错,我自己也一直在使用付费的,而且价格也很合理,那就是知更鸟(begin)你可以去看看,这个是我的真心建议。

�0�2�0�2�0�2�0�2�0�2�0�2�0�2当然如果你的*客程序不是wordpress所搭建的也没关系,其实道理都是一样的。在这之前,我曾经仿制过Z-blog的皮肤,同样也能通过W3C验证,我并没有到网络上去发布,毕竟这样的东西多少要牵扯到版权问题,所以只能自己收藏了。

�0�2�0�2�0�2�0�2�0�2�0�2�0�2仿制主题之前,你必须要了解的就是主题文件各项栏目调用代码,主题所需要的文件夹以及各个文件。有了这些基本功夫,你也一样能搞到好的主题的。

�0�2�0�2�0�2�0�2�0�2�0�2�0�2�0�2首先我们需要准备的工具有:遨游浏览器(需安装Viewpage插件),**版就自带了这样一个插件;火狐浏览器(方便查看比较完整的源码);

Macromedia Dreamweaver 8

(编辑主题文件所用);

�0�2�0�2�0�2�0�2�0�2�0�2�0�2�0�2接下来我们找到想要仿制主题的这个网站,比如我的*客,使用遨游打开狂舞网络首页,点击Viewpage,将会跳出这样的界面:

选择“图像”,把这个主题所使用到的网页背景图全部下载到本地相对应的主题文件夹中,然后选择“样色表”,把所用CSS文件下载到本地对应的样色表文件夹中。

该要的东西都弄到手了,下面就是看自己的表现了,使用Macromedia Dreamweaver 8新建主题所需要到的文件,比如,首页文件(index.php),侧边文件(sidebar.php),底部(footer.php)等。

�0�2�0�2�0�2�0�2�0�2�0�2用火狐打开该主题网站首页,查看源码,自己根据实际情况把这里的代码适当划分为头部文件header.php,底部(footer.php),侧边文件sidebar.php等等。保留代码中div等调用,详细美化我也就不必多说了,更多的还是要靠自己去琢磨。如有不懂的地方可以留言,我们共同努力解决。

相关文章
在线客服
微信联系
客服
扫码加微信(手机同号)
电话咨询
返回顶部