Blogブログ

Archives

htaccess 時間制限でのRewirte.

時間制限で、リダイレクトをしたい時等に。 Case 1. 10日の午後18時以降はメンテ表示させる。 ErrorDocument 503 /maintenance.html <IfModule mod_rewrite.c>   RewriteEngine On   RewriteCond %{TIME_DAY}%{TIME_HOUR} >1017   RewriteCond %{REQUEST_URI} !=/maintenance.html   RewriteCond %{REMOTE_ADDR} !=IP.TO.YOUR.LOCATION   RewriteRule ^.*$ – [R=503,L] </IfModule>   Case 2. 10日の午前2時から11日の午後18時までをメンテ表示させる。 ErrorDocument 503 /maintenance.html <IfModule mod_rewrite.c>   RewriteEngine On   RewriteCond %{TIME_DAY}%{TIME_HOUR} >1002   RewriteCond %{TIME_DAY}%{TIME_HOUR} <1118   RewriteCond %{REQUEST_URI} !=/maintenance.html   […]

Godaddy contact form 7 problem

USで有名なサーバーGodaddyで、contact form 7が使えない問題があった。 解決方法をメモ。 上手く行った設定は以下。 参考:http://angstrey.com/index.php/2009/04/22/how-to-send-e-mail-with-wordpress-from-godaddy-windows-hosting/ 1.プラグインディレクトリより、WP-Mail-SMTPをダウンロードしてインストール。 2.Settingにて、 From Mail : godaddyでホストされているメールアドレス。 From Name : お好きな名前を。 Mailer : “Send all WordPress emails via SMTP”を選択。 SMTP Host : relay-hosting.secureserver.net SMTP Port : 25 Encryption : “No encryption.”を選択。 Authentication : “No: Do not use SMTP authentication.”を選択。 以上を設定したら、一度テストメールを送ってみる。 結果が、’bool(true)’と返ってくkれば成功。 続いて、Contact form 7側での設定時に、 From:のところに、さっきのFrom Mail :で設定したものに設定する。 これで、問題は解決。

use opauth

URL:http://opauth.org/ テストログ。 DLして展開、confファイルの編集。 opauth.conf.php 設置パスと、 ‘path’ => ‘/your_file_path/’, call backのURL, ‘callback_url’ => ‘yourcallback.php’, そして下部のStrategyに、keyやsecretを設置。 次にindex.php上のdefineを別ファイルでも使うので、まとめておく。 新規作成で、define.php。 define(‘CONF_FILE’, dirname(__FILE__).’/’.’opauth.conf.php’); define(‘OPAUTH_LIB_DIR’, dirname(__FILE__).’/lib/Opauth/’); index.phpでは、これをrequireする。 require_once ‘define.php’; 次にtwitterディレクトリを作成。 直下にindex.phpをおき、下を記載。 /** * Define paths */ require_once ‘../define.php’; /** * Load config */ if (!file_exists(CONF_FILE)){ trigger_error(‘Config file missing at ‘.CONF_FILE, E_USER_ERROR); exit(); } require CONF_FILE; /** * Instantiate Opauth with the […]

メンテナンス表示の正しい方法。

メンテナンス表示の正しい方法をメモしました。   1./maintenance.htmlを置く。 2.htaccess, httd.confどちらかに下記を記載。 ErrorDocument 503 /maintenance.html <IfModule mod_rewrite.c>   RewriteEngine On   RewriteCond %{REQUEST_URI} !=/maintenance.html   RewriteCond %{REMOTE_ADDR} !=192.168.0.4   RewriteCond %{REMOTE_ADDR} !=192.168.0.5   RewriteRule ^.*$ – [R=503,L] </IfModule> <IfModule mod_headers.c>   Header set Retry-After "Sun, 14 Jun 2009 6:00:00 GMT" </IfModule>   上記の利点。 ・URLが変わらずにHTTPレスポンスコード503が返るので、検索エンジンがメンテ画面がインデックスすることがない。 ・RewriteCond %{REMOTE_ADDR}に管理者IPを指定すれば、管理者はメンテ中でも作業が可能。 逆に、悪いメンテ表示とは、 ・全URLへのアクセスにRewriteでメンテ中画面を表示 → ステータスコードが200のままなので、検索エンジンがメンテ状態をインデックスしてしまう。 ・全URLへのアクセスを302リダイレクトでメンテ中画面のURLに転送 → […]

ec-cube preferd shipping date picker.

ec-cube 2.11.2 お届け時間の指定にDatepicker LC_Page_Shopping_Payment_Ex.phpで、action()をoverride。 Datepickerで使うため、新しく $arrDelivFirstDate $arrDelivLastDate $arrDelivDateSelected を定義する。 // お届け日一覧の取得 /* Add for Datepicker —————————- */ $array_deliverDates = $objPurchase->getDelivDate($objCartSess, $cart_key); $this->arrDelivDate = $array_deliverDates; $num=0; foreach ($array_deliverDates as $key => $value) { if($num===0){ $this->arrDelivFirstDate = $value; } if($num===(count($array_deliverDates)-1)){ $this->arrDelivLastDate = $value; } $num++; } $this->arrDelivDateSelecter = $_SESSION[‘shipping’][0][‘shipping_date’]; /* —– */ payment.tplで、上で定義した変数を使って、datepickerを呼び出す。 下の記述がある辺りで、 お届け時間: <select name=”<!–{$key}–>” […]

Dropbox と xamppを同期させる。

Dropbox と xamppを同期したのでメモ。 ※Windowsバージョン Dropbox, xamppはインストールされている前提。 ※Dropboxフォルダは C:\Users\[ユーザー名]\Dropbox にある前提 まずhtdocsを、 C:\Users\[ユーザー名]\Dropbox内に移す。 次に、mysqlのdataフォルダ (xampp/mysql/data) を同じく C:\Users\[ユーザー名]\Dropbox 配下にコピー。 そしてconfigファイル編集。 – htdocs C:\xampp\apache\conf\httpd.confを編集。 DocumentRoot “C:/xampp/htdocs” となっている箇所を DocumentRoot “C:/Users/[ユーザー名]/Dropbox/htdocs” に。 次に<Directory “C:/xampp/htdocs”> となっている箇所を <Directory “C:/Users/[ユーザー名]/Dropbox/htdocs”> に。 – mysql C:\xampp\mysql\bin\my.ini 内、 datadir = “C:/xampp/mysql/data” となっている箇所を、 datadir = “C:/Users/[ユーザー名]/Dropbox/data” に。 以上。  

wordpressでカスタム投稿タイプの記事に.htmlの拡張子をつける。

まずまずの頻度である「記事に.hmltをつけたい!」という要望。 投稿だけを使うならパーマリンク設定でOK!だが、カスタム投稿タイプの場合は出来ない。 便利なプラグインもあるのだが、 http://wordpress.org/plugins/custom-post-type-permalinks/ テーマに組み込めないか調べてみたところ、こんな記事を見つけられたのでメモ。 http://wordpress.stackexchange.com/questions/59024/add-html-dot-html-extension-to-custom-post-types 1. rewrite_rules_array フィルターにcustom post type分のrewrite ruleを追加。 add_action('rewrite_rules_array', 'rewrite_rules'); function rewrite_rules($rules) { $new_rules = array(); foreach (get_post_types() as $t) $new_rules[$t . ‘/(.+?)\.html$’] = ‘index.php?post_type=’ . $t . ‘&name=$matches[1]'; return $new_rules + $rules; } 2. custom post type でのURLフォーマットを指定。 post_type_linkフィルターを利用。 add_filter('post_type_link', 'custom_post_permalink'); // for cpt post_type_link (rather than post_link) function custom_post_permalink ($post_link) […]

wordpress プラグインの多言語化

wordpress 多言語化 ■ プラグインファイル内の記述 前提として、mypluginというプラグイン名で、langという場所に言語ファイルを保存するとする。 プラグインのメインとなるファイルに、 load_plugin_textdomain(‘myplugin’, false, ‘myplugin/lang’); と記述。これで言語ファイルを読み込む設定が出来た。 ソース上の多言語化したいテキストには、以下の様に記述。第二引数には、上のload_plugin_textdomainで設定した第一引数を記述する。 __(“text”, ‘myplugin’) -> “text”を返す _e(“text”, ‘myplugin’) “text”を出力 上記が正しく設定されていれば、myplugin/lang に置かれている言語ファイルを読み込むはず。 ■言語ファイルの作成 ここからはpoeditを使う。 予め、poeditをインストールしておく。 http://www.poedit.net/download.php まずはcatalogを新規作成。 Source pathは、例えばxamppで作業してる場合は base path -> C:\xampp\htdocs\my_wordpress\wp-content\plugins\myplugin paths -> . のように設定。 次にSources Keywordsに下の2つを追加。 add _e, __ この状態でまずdefaultとして保存。この時に拡張子を.POTとする。 一旦閉じて、新たにnew catalog from POTで先に作成したdefault.POTを元に作成する。 PathとKeywordの設定を行い、保存するときに myplugin-ja.poの形式で保存する。 すると自動で翻訳該当のテキストを抽出してくれるので、あとはpoeditにしたがって入力していく。

wordpress ckeditor を使う

WordPressでCKeditorを使う。 まず便利なのが、テンプレート機能。 幾つかテンプレートを用意してあげれば、ユーザにも使いやすいはず。 編集するファイルはこちら。 plugins/ckeditor-for-wordpress/ckeditor.templates.js そして、ありすぎると逆に見づらいのがエディタのボタン。 各ボタンの名称はここで確認するとして、 http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Toolbar wordpress fullを選んだ時に表示させたくないものを、下で編集。 plugins/ckeditor-for-wordpress/ckeditor.config.js (line 50辺り) テンプレート機能は幅広いユーザに使いやすいんじゃないかな、と思ってます。

sakura VPS 基本開発環境設定手順 FTP編

FTP。ガッツリハマりました。 まだ釈然としない部分もあるのだが、今後のためにめも。 参考:http://plusblog.jp/6601/ まずは入っているか確認 rpm -qa vsftpd インストール yum -y install vsftpd ※削除方法も yum -y remove vsftpd 再起動 sudo /etc/rc.d/init.d/vsftpd start 自動起動設定 sudo chkconfig vsftpd on sudo chkconfig –list vsftpd vsftpd          0:off   1:off   2:on    3:on    4:on    5:on    6:off ランレベル 0 システムの停止 ランレベル 1 シングルユーザモード ランレベル 2 マルチユーザモード (NFSマウントなし) ランレベル 3 マルチユーザモード (通常 : コンソールログイン) ランレベル […]