categoryphp
㈠ 我是這樣改的,並且也成功了,但是裡面的鏈接仍然是 :category.phpid=2 這樣的形式
搜索一個函數build_uri,在裡面加上一個把category的情況復制一下,改成x,然後把x里的build_url('category',......)改成build_uri('x',......)這種形式
㈡ 如何使用wordpress 的category.php
1、 在comments.php評論表單中添加自己想要的欄位,如:
<p>
<input type="text" name="tel" id="tel" size="22" tabindex="4" />
<label for="tel">電話</label>
</p>
tabindex 這個屬性按照從小到大排,為什麼要這樣?你可以自己試試….
2、如果評論表單是使用系統自帶的,那麼請用以下方法添加表單欄位,如果不是,請略過
add_filter('comment_form_default_fields','comment_form_add_ewai');
function comment_form_add_ewai($fields) {
$label1 = __( '國家/地區' );
$label2 = __( 'Skype賬號' );
$label3 = __( '電話' );
$label4 = __( '傳真' );
$label5 = __( '地址' );
$value1 = isset($_POST['guojia']) ? $_POST['guojia'] : false;
$value2 = isset($_POST['skype']) ? $_POST['skype'] : false;
$value3 = isset($_POST['tel']) ? $_POST['tel'] : false;
$value4 = isset($_POST['fax']) ? $_POST['fax'] : false;
$value5 = isset($_POST['address']) ? $_POST['address'] : false;
$fields['guojia'] =<<<HTML
<p>
<label for="guojia">{$label1}</label>
<input id="guojia" name="guojia" type="text" value="{$value1}" size="30" />
</p>
HTML;
return $fields;
}
3、 接收表單欄位並寫入資料庫
在主題目錄的 functions.php添加以下代碼
add_action('wp_insert_comment','wp_insert_tel',10,2);
function wp_insert_tel($comment_ID,$commmentdata) {
$tel = isset($_POST['tel']) ? $_POST['tel'] : false;
//_tel 是存儲在資料庫里的欄位名字,取出數據的就會用到
update_comment_meta($comment_ID,'_tel',$tel);
}
這兩步就可以將數據寫入資料庫了,不信你試試看
add_action()參數中的10和2分別表示該函數執行的優先順序是10(默認值,值越小優先順序越高),該函數接受2個參數。
4、在後台顯示額外欄位
前面兩步只是接收和寫入到資料庫,那麼要怎麼在後台評論列表中顯示呢?將以下代碼復制到主題目錄的functions.php 中:
add_filter( 'manage_edit-comments_columns', 'my_comments_columns' );
add_action( 'manage_comments_custom_column', 'output_my_comments_columns', 10, 2 );
function my_comments_columns( $columns ){
$columns[ '_tel' ] = __( '電話' ); //電話是代表列的名字
return $columns;
}
function output_my_comments_columns( $column_name, $comment_id ){
switch( $column_name ) {
case "_tel" :
echo get_comment_meta( $comment_id, '_tel', true );
break;
}
如果要在前台的留言列表中調用,就用以下代碼,_tel就是你在資料庫中存儲的欄位名字
<?php
$tel = get_comment_meta($comment->comment_ID,'_tel',true);
if( !empty($tel)){
echo "電話".$tel;
}
?>
5、 大功告成,看看後台的評論列表,是不是多了一列電話,那樣的話就沒錯了。
6、如果要移除某一個自帶的表單欄位,可以使用以下代碼
function tel_filtered($fields){
if(isset($fields['tel']))
unset($fields['tel']);
return $fields;
}
add_filter('comment_form_default_fields', 'tel')
㈢ PHP中常看到類似這種寫法,$category->getId(),怎麼理解
這個必須有個前提,就是必須之前有創建一個類,如:
class Cname(){
}
--------------------------------
然後類裡面必須有一個函數,如:
class Cname{
function getId(){ //這里是創建函數
echo "執行了函數";
}
}
--------------------------------
有了前面的兩個前提後,我們還必須實例化這個類,如:
$category = new Cname();//這里的意思就是實例化函數Cname(),並給到變數$category
--------------------------------
這樣就可以通過$category來訪問類裡面的所有東東了,你問的這個$category->getId()就是訪問這個類裡面的getId()方法了。
---------------------------------
這里給個完整的實例你調試:
<?php
class Cname{
function getId(){ //這里是創建函數
echo "執行了函數";
}
}
$category = new Cname();
echo $category->getId();
?>
㈣ category.php 出現183錯誤怎麼解決
foreach 數組對象不存在,所以循環出錯了
㈤ 有人知道商品列表category.php頁面內容在哪修改嗎
iframe標簽
將b.php嵌套進去,這樣就可以包含進去了
<iframe src="./b.php" frameborder="no" width="100%" height="600px" border="none" scrolling="auto"/>
你可以去後盾人平台看看,裡面的東西不錯
㈥ category.phpcatid=379&areaid=10785&streetid=4677如何寫偽靜態
1、方法有開啟rewrite干,正則表達匹配。這種用的應該不多。
2、用框架路由實現。
laravel
$router->get('/category/{catid}/{areaid}/{streetid}', function(){
return ""
});
3、不用框架
開啟rewrite,所有訪問都路由到一個php 上,比如index.php
RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
然後根據全局函數,獲取訪問路徑。
category/catid/379/areaid/10785/streetid/4677
$param=$_SERVER['REQUEST_URI']
然後根據「/」轉數組。
$param的值差不多這個樣子['category','catid','379','areaid','10785','streetid','4677']
然後設計演算法,執行category.php 。大多框架的路由 基本上也差不多這個思路。
㈦ wordpress文章歸檔archive.php和分類目錄模板category.php的區別是什麼
archive.php是調用你網站的所以分類目錄
category.php是調用某一個id的分類目錄。
這兩個文件可以調用不同的樣式模板
㈧ ecshop的根目錄下category.php,在那裡打開的
需要用ftp軟體連接到空間里,根目錄里就有category.php這個文件
㈨ ecshop中category.php顯示全部ID內容
你是想有一個頁面調出所有商品吧?
告訴你一個方法:用search.php頁面,你在搜索框里搜索空白,然後點擊搜索出來的頁面就是所有商品的頁面。
如果堅持用category.php只能修改代碼了。
㈩ 有誰能告訴我,ecshop中category.php這個頁面里的banner在後台的哪編輯添加呢
找category.dwt