Blogブログ

Month: May 2013

wordpress 関数を外部phpで使う

ちょっと探したのでメモ。 wordpressの関数を外部PHPから使う方法。 require(‘../wp-blog-header.php’); 参考 Codex:http://codex.wordpress.org/Integrating_WordPress_with_Your_Website

wordpress マルチサイト ドメイン変更手順

予定があるので備忘録。 マルチサイト化したwordpressの、ドメインを変更したら以下の手順で変更する。 ローカル環境でのテストの記録。 今回は本サイトのはいかに、/test/というマルチサイトを持ち、 そしてドメインを、localhost -> 192.168.24.55へ変更する想定。 ※バックアップを忘れずに ■p-config.php define(‘DOMAIN_CURRENT_SITE’, ‘localhost’); ↓ define(‘DOMAIN_CURRENT_SITE’, ‘192.168.24.55’); ■データベース まず、localhost も文字列が入っているテーブルを検索。 変更が必要そうなものは、以下がヒットした。 wp_2_options wp_options wp_blogs wp_site wp_sitemeta 1.wp_opstions 各サイトのwp_options table を変更。 マルチサイトが増えるに連れて、 wp_n_optionsとなっているはず。 // home site UPDATE wp_options SET option_value = ‘http://192.168.24.55’ WHERE option_name = ‘home’; // multi site 2 UPDATE wp_2_options SET option_value = ‘http://192.168.24.55/test’ WHERE option_name = […]

Practice for jquery plugin.

プラグイン作成の練習。 スクロールと同時にランダムに動くプラグインを作成しました。 基本ソースは以下。 ■HTML <!DOCTYPE html> <html lang=”ja”> <head> <meta charset=”utf-8″> <title>Parallax Test</title> <meta name=”keywords” content=””> <meta name=”description” content=””> <link rel=”stylesheet” href=”css/style.css” media=”all”> <script src=”http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js”></script> <script src=”js/jquery.randomScroll.js”></script> <script> $(function() { $(“#parallax”).shparallax({ scrollValueDiv : “#scrollValue” }); }); </script> </head> <body> <h1>Just scroll it.</h1> <p class=”indicator”>スクロール値 | <span id=”scrollValue”>0</span></p> <ul id=”parallax”> <li id=”item1″></li> <li id=”item2″></li> <li id=”item3″></li> […]

PowerTip

Powertip Powertipを使って、フォームの入力補助テキストを表示する。 とても便利だったので、簡単にメモ。 1.下のようなHTMLフォームを用意する。 <form> <label>Name</label> <input type=”text” name=”name” class=”name” id=”field_01″> <label>Email</label> <input type=”text” name=”email” class=”email” id=”field_02″> <label>Comment</label> <textarea></textarea> <input type=”submit” value=”submit”> </form> 2.powertipライブラリのjs, css ファイルを読みこませる。 ダウンロード ↓ http://stevenbenner.github.io/jquery-powertip/ <script type=”text/javascript” src=”assets/js/powertip/core.js”></script> <script type=”text/javascript” src=”assets/js/powertip/csscoordinates.js”></script> <script type=”text/javascript” src=”assets/js/powertip/displaycontroller.js”></script> <script type=”text/javascript” src=”assets/js/powertip/placementcalculator.js”></script> <script type=”text/javascript” src=”assets/js/powertip/tooltipcontroller.js”></script> <script type=”text/javascript” src=”assets/js/powertip/utility.js”></script> <script type=”text/javascript” src=”assets/js/powertip/powertip.js”></script> <link rel=”stylesheet” href=”assets/css/powertip/jquery.powertip.css” > 3.新たにcontact.js等でファイルを作成し、powertip表示スクリプトを記述していく。 […]

Metro UI Bootstrap Templates

個人でのサービスを始めるにあたって、オープンソースかつMetro UIベースのテンプレートを使おうと思ってリサーチしたところ思った以上に良さげなのをたくさん見つけたのでメモ。 1.Bootme TRO Windows8風のデザインで、素晴らしい完成度。アイコンの種類も豊富で、綺麗。 でもレスポンシブで縮めた時に少し違和感を感じた。 2.BOOTSWATCH テーマが充実したフレームワーク。Twitter Bootstrapベースで、320pressがWordPress用のテーマも配布しているようだ。 3.Metro-bootstrap こちらもTwitter Bootstrapベース。BOOTSWATCHよりもシンプルで、カスタムしやすそうだ。 4.Metro UI CSS こちらはよりWindows8っぽいデザイン。使用する際にはMetro UI CSSサイトへのリンクを設置する必要があるようだ。 5.METRO MANIA これもまた素晴らしいクオリティ。。 ただ使用にはコストが発生するようだが、一番安いものでたったの$4。クライアントへの納品には問題なさそう。 カスタマイズしての再配布や販売の場合は$300ドルらしい。 https://wrapbootstrap.com/theme/metro-mania-no.1-metro-bootstrap-theme-WB07F9G8L by http://responsivewebinc.com/ 6.SCAFFOLD コーポレートサイトなんかに良さそうな、テンプレート。 DLリンクとライセンスに関する情報はみつからなかったのだが、ソースを見る限りはやはりTwitter Bootstrapがベースにある。 by http://iweb-studio.com/ しかしクオリティの高い素材がたくさんあることに驚きました! スキルの高い制作会社も。。 世界は広いっす。 Thanks for developers!!!

is_main_query, pre_get_post を使う。

is_main_query, pre_get_post を使う。 これまで、Wordpressのテーマカスタマイズではquery_postsを使って、取得するポストの条件を定義してDBへアクセス、という手法を使っていた。 が、これだとDBへ2度アクセスする事になり、パフォーマンスの低下を招くことになる。 そこで使うのがpre_get_posts フックとis_main_query()関数。 まずpre_get_postsだが、これはテンプレートファイルにアクセスする前に、メインクエリを変更する為のフックだそう。 そして、is_main_query()関数。 これは、Wordpress標準のクエリなのか、テンプレートから呼び出されたのかを判別するもの。 この2つを使い、function.phpに以下のように記載することで、テンプレート呼び出し前にメインクエリに渡すパラメータを定義出来る。 要は奏することで、DBアクセスを一度にしてしまおうという事。 例えば、以下の様な形で使う事ができる。 function get_my_custom_posts( $query ) { /* 1 */ if ( is_admin() || ! $query->is_main_query() ){ return; } /* 2 */ if ( is_home() && $query->is_main_query() ) { $query->set( ‘posts_per_page’, 1 ); return; } /* 3 */ if ( is_post_type_archive( POSTTYPE ) && […]

Drag and drop.

ファイルのDrag and dropが出来る、jsライブラリを実装してみた。ちなみにこれはver.2よりライブラリが不要になったよう。 サイトURL: http://www.dropzonejs.com/ github: https://github.com/component/component 使い方: Preparation まずはこちらから一式DL. https://github.com/enyo/dropzone/tree/master/downloads ファイル構成はこちら。 / css/ images/ uploads/ dropzone.js index.php upload.php Let's Work with Dropzone! css,jsファイルを読みこみ、下を記述。   <form action="upload.php" class="dropzone" id="">   </form> class dropzoneを与える事で起動するらしい。 Do php work PHPの記述。upload.phpに以下を記述。 $ds = DIRECTORY_SEPARATOR; //1 $storeFolder = 'uploads'; //2 if (!empty($_FILES)) { $tempFile = $_FILES[‘file’][‘tmp_name’]; //3 $targetPath = dirname( […]