忍者ブログ
19 January

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

21 January

現在のカテゴリ、タグ、タクソノミーの色んな値を取得する

http://blog.ks-product.com/wrodpress-get-current-term/

/*
	アーカイブページで現在のカテゴリー・タグ・タームを取得する
*/
function get_current_term(){

	$id;
	$tax_slug;

	if(is_category()){
		$tax_slug = "category";
		$id = get_query_var('cat');	
	}else if(is_tag()){
		$tax_slug = "post_tag";
		$id = get_query_var('tag_id');	
	}else if(is_tax()){
		$tax_slug = get_query_var('taxonomy');	
		$term_slug = get_query_var('term');	
		$term = get_term_by("slug",$term_slug,$tax_slug);
		$id = $term->term_id;
	}

	return get_term($id,$tax_slug);
}


//カテゴリ・タグ・カスタムタクソノミー オブジェクトを取得 $term = get_current_term(); //以下は必要に応じて記述 echo $term->name; //名前を表示 echo $term->slug; //スラッグを表示 echo $term->description; //説明文を表示 echo $term->count; //投稿数を表示


例)現在のカテゴリー名を取得
<p>
<?php $term = get_current_term(); ?>
<?php echo $term->name; ?>
</p>


カテゴリ名を取得しようと調べたら、1行で終わらないのばかりで面倒っておもった。
そしたらまとめてくれている人がいたので、こんどからコレを利用しようとおもう。
PR
20 January

phpファイルinclude と WPの空検索結果がおかしい

http://morilog.com/wordpress/tips/empty_search_redirect/


WPの検索欄で空検索をしたら、固定ページ本体と投稿ページアーカイブ(float並び)が合わさって、レイアウトくずれていた。
昔作ったWPサイトで空検索してみたら、トップページが表示された。
検索範囲を広げるSearch everything で固定ページを除外してみても、固定ページが空検索ででてくる。なんなの・・・。
投稿だけが全部でてくるなら、たまにみかける検索結果だからいいけど、固定もまざってレイアウトグチャぐちゃは困る
調べた結果、WP4.0から挙動がかわったらしい。
昔作ったWPサイトはまだ3.9だった。

空検索した結果を変更したい。
空検索したらトップページのphpを読み込むことにした。
http://webcre-archive.com/2012/09/14/wordpress_search_no_keywords/

function search_no_keywords() {
    if (isset($_GET['s']) && empty($_GET['s'])) {
        include(STYLESHEETPATH . '/home.php');
        exit;
    }
}
add_action('template_redirect', 'search_no_keywords');


子テーマだとTEMPLATEPATHでは上手くいかない!STYLESHEETPATHで解決。ファイル読み込み | WordPress
http://wptheme.monochrome-photo.info/?p=268

最初、トップページphpよみこまねーぞ!って思ったら、子テーマと親テーマではパスが違うらしい。ホームやサイトルートURL取得するタグと同じで子テーマ用があった。

Show Current Template

このプラグイン最高です。子テーマテンプレ読み込んでないじゃんって分かったのも、コレ使ってたからです。adminバーに現在のページで読み込まれてるテンプレphpが表示されます。
どのphpを修正したらいいかとか、オリジナルテンプレが多いテーマや初めて見るテーマで非常に役に立ちます。
20 January

the_category で特定カテゴリーを除外したい

カテゴリー出力で特定のカテゴリーを除外したい
http://web-taiyo.com/works/110824.html


function the_category_filter($thelist,$separator=', ') {
	if(!defined('WP_ADMIN')) {
		$exclude = array('カテゴリー名','カテゴリー名','カテゴリー名');
		$cats = explode($separator,$thelist);
		$newlist = array();
		foreach($cats as $cat) {
			$catname = trim(strip_tags($cat));
			if(!in_array($catname,$exclude))
				$newlist[] = $cat;
		}
		return implode($separator,$newlist);
	} else
		return $thelist;
}
add_filter('the_category','the_category_filter',10,2);
20 January

「ログイン・ログアウト」のテキストを変更したい welcart

[解決済み] ”ログイン”の表記を変更したい


http://www.welcart.com/community/forums/topic/%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E3%81%AE%E8%A1%A8%E8%A8%98%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%9F%E3%81%84



add_filter('usces_filter_loginlink_label', 'my_filter_loginlink_label');
function my_filter_loginlink_label(){
return 'ログインの替わりの文字列';
}
add_filter('usces_filter_logoutlink_label', 'my_filter_logoutlink_label');
function my_filter_logoutlink_label(){
return 'ログアウトの替わりの文字列';
}

元のソース

function/template.func.phpの1330行目
function usces_loginout( $out = '') {
	global $usces;
	if ( !$usces->is_member_logged_in() )
		$res = '<a href="' . apply_filters('usces_filter_login_uri', USCES_LOGIN_URL) . '" class="usces_login_a">' . apply_filters('usces_filter_loginlink_label', __('Log-in','usces')) . '</a>';
	else
		$res = '<a href="' . apply_filters('usces_filter_logout_uri', USCES_LOGOUT_URL) . '" class="usces_logout_a">' . apply_filters('usces_filter_logoutlink_label', __('Log out','usces')) . '</a>';

	if( $out == 'return' ){
		return $res;
	}else{
		echo $res;
	}
}
17 January

さくらサーバー プラン変更 WPデータ移行 ドメイン変更なし Duplicator

さくらコントロールパネル

1、旧さくらコントロールパネルにてドメインの削除
2、新さくらコントロールパネルにてドメインの追加(フォルダ作ったりする)
3、新データベース作成
ドメインを削除してから追加できるようになるまで1時間2時間とか書いてあったが、
私の場合は10分以内でいけた。
4、ファイルマネージャ設定から indexなんちゃらの拒否設定をする
5、メールアドレス再取得

WP管理画面

WPプラグイン「Duplicator」でWPフォルダとデータベースを保存して移行して再構築する
http://netaone.com/wp/duplicator/

1、旧WPでプラグインをインストールし、アーカイブzipとインストーラーphpのファイルを保存する。
2、新サーバーにWPをインストールし、同ディレクトリに、アーカイブzipとインストーラーphpをいれる
※この際、元サイトと同じID・パス・データベース接頭辞にするのが良いと思う。
※余計なエラーで煩わされたくない。分かる人は自由で良いと思う。

3、http:://wp表示ドメイン名/****インストーラー.php にアクセスして設定画面を開く
4、上記URLを参考に入力。新しく入力するところといったら、新データベースのID・パス・ホスト・DB名など。
※Connect and Remove All Data を選択。Create New Datebaseをなんとなく選んだら「既にtableが11個ある。Duplicaterは空のDBじゃないとダメです」ってエラーがでた。
※その後でwp-configのエラーがでた。wp-config.phpを削除かネーム変更してなかったものにして再トライでOK


5、そのまま実行実行でドメインにアクセスしよう
6、余計なファイルがFTPにできるので削除。ついでにプラグインも削除しておく


Duplicatorがすっごい便利だった。
いつもはWPフォルダを自分でボンッとおいたり、データベースはphpmyadminでインポートしていた。これはデータベースもIDパス入力すれば勝手にやってくれる!

少し不安だったけど、これすごすぎ。
でも容量が多いHPはエラーでるらしい。
多すぎる場合はメディアファイルを除いてパッケージングし、あとからuploadsフォルダに手動で移動するのが良いと思う。

次に私はルートディレクトにぶちまけたファイルを1階層サブディレクトリに落とし、
さらにルートディレクトリにリダイレクトさせた。

その後WP内の画像フォルダ /uploads/ のルートが変更されていなかったので、画像が全部非表示だった。
そこで「Search Regex」というプラグインで、投稿内の画像URLソースを一括変換した。