自己動手從頭制作WordPress主題(一)


前幾天搭建好了PHP的開發調試環境后,就開始研究WordPress的主題了。自從把WP用做CMS以來,一直對其主題系統很感興趣,方便啊,精通了主題就可以把WP改成多種類型的網站:企業、門戶、購物型等等,而不僅限於博客。擔心WP的性能?我一點都不擔心,因為用WP的人太多了,如果有性能問題,還有人用嗎?再說有一個好的架構就不要再去計較那一點點性能了。

1、WP主題約定

存放位置:wp-content-》themes文件夾下。那么插件就存在plugins目錄下了。

我在這里建立一個cnblogs文件夾,從頭開始制作一個WP的主題,所有的主題制作修改都是在這個文件夾下完成的。

所需文件:

index.php 首頁文件,為了方便我們把頭和尾放在header.php和footer.php文件中。

style.css 樣式文件。

screenshot.png 主題縮略圖。

注:如果有home.php,就輪不到index.php了。

2、啟用主題

從/wp-admin登錄后台,選擇外觀-》主題菜單,啟用cnblogs主題:

3、index、header和footer

index.php調用了header.php和footer.php:

<?php get_header(); ?>

//Todo 
    
<?php get_footer(); ?>

WP函數get_header()和get_footer()調用header.php 和 footer.php。PHP的這種下划線語法還要適應一下:)

header.php代碼:

<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>" />
<meta name="viewport" content="width=device-width" />
<meta name="description" content="<?php bloginfo("description")?>"/>
<title>
<?php
    wp_title( '|', true, 'right' );
    bloginfo('name');
?>
</title>
<link rel="profile" href="http://gmpg.org/xfn/11" />
<link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( 'stylesheet_url' ); ?>" />
<?php
    wp_head(); 
?>
</head>

<body <?php body_class(); ?>>
<div id="page">
    <header id="branding" role="banner">
            <hgroup>
                <h1><span><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></span></h1>
                <h2><?php bloginfo( 'description' ); ?></h2>
            </hgroup>
    </header>

    <div id="main">

其實是HTML的前半部分,設置了Meta、Title,鏈接了樣式表css,H1顯示網站名稱,H2為網站描述。大量調用了WP函數bloginfo(),用於輸出數據庫選項表配置的相關信息,可以登錄WP的后台修改這些信息。

footer.php代碼:

    </div><!-- #main -->

    <footer id="colophon" role="contentinfo">
        //to do cnblogs footer
    </footer>
</div><!-- #page -->

<?php wp_footer(); ?>

</body>
</html>

結束HTML代碼。wp_header()和wp_footer()函數是為插件作者保留的鈎子,如果不使用插件,可以刪除。

到此完成了我們非常簡陋的主題:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM