kensuke-iizuka のアーカイブ

WordPress コーディング規約

2016年11月25日

wordpressのコーディング規約は[このページ](https://make.wordpress.org/core/handbook/best-practices/coding-standards/)で確認することが出来ます。 PHPを始めとする各言語のコーディング規約も合わせてまとめられているので一度目を通しておくべきかなと思います。 手始めにPHPで自分があまり意識していなかったことを2つ紹介します。 ### 1,インデントではTabを使え! スペースではな
続きを読む

gitコマンドでも怠惰になる

2016年11月21日

[前回](http://hacknote.jp/archives/23818/)エイリアス設定という便利なものを導入したので次はよく使うgitでも同じをしてしまおうと思います。 いや〜、怠惰ですねぇ でも前回通りだと少しつまらないので趣向を凝らしてgit設定ファイルのほうで設定してみます。 と言っても簡単で ``` [alias] status = st ``` のようなaliasを、いかのどれかに追記すればオッケーです。 ・マシ
続きを読む

エイリアスを設定してどんどん怠惰になる

2016年11月21日

> エイリアスとは、偽名、別名、通称などの意味を持つ英単語。ITの分野では、ファイルなどの実体を別の名前で参照するためのシンボルといった意味で使われることが多い。 今回はbashでエイリアスを設定して面倒くさいコマンドを簡単に入力して怠惰になっていきましょうということですがやること自体は非常に単純です。 ``` $vi ~/.bashrc ``` vimでbashrcファイルを開きます。 ``` alias prj='cd ~/workspace/s
続きを読む

Homebrewにおけるlinkについて

2016年11月20日

Homebrewはとても便利で簡単に自分の必要なソフトウェアやプログラミング言語のライブラリ、開発環境をインストールできるのですが、 いくつかのコマンドを入力するだけでほとんど何も理解しなくとも最適な環境が構築されてしまい、いざエラーが出てしまうと何も出来ない… ということが多いので少しでも詳らかにしてみましょう! 今回は普段はあまり意識しないのですが、linkについて調べてみました。 ### linkとは インストールされたパッケージのコマンドはそ
続きを読む

PHPでメモリ上に一時的なファイルを作成する

2016年11月15日

ディスクでなくメモリに一時的ファイルを作成して何かの処理に使うことで処理の高速化をしたいときに便利です。 ``` $data = file_get_contents("hoge.fuga"); $fp = fopen('php://memory', 'r+'); fwrite($fp, $data); //何か処理 fclose($fp); ``` fopenの第二引数でファイルアクセスをどこまで許容するかを決めています。 php://mem
続きを読む

xhrについて

2016年11月12日

chromeのデベロッパーツールでネットワークの動きを見ているとxhrという項目が目に入り、なんだか気になります!! xhrとはXML Http Requestの略だそうで > JavaScriptなどのウェブブラウザ搭載のスクリプト言語でサーバとのHTTP通信を行うための、組み込みオブジェクト(API)である。 だそうで…よくわからん! MDNのリファレンスをよく見ると > XMLHttpRequest は、クライアントとサーバーの間でデータを伝送する
続きを読む

element.valueとelement.setAttributeの違い

2016年11月9日

あまり意識して使い分けていなかったのですが、気になって調べた結果、 この違いをしっかり理解していないと恐ろしい結果になってしまうことに気づきました。 MDN(Mozilla Developer Network)、Javascriptの親玉のリファレンスを見ると、 element.setAttributeの項目について以下のように記述されています。 > setAttribute() を使ってある属性、XUL や HTML の特別な値、および HTML の選択領域の変更は
続きを読む

PHPでの引用符の使い方

2016年11月4日

色々なWebページのソースコードや他人の書いたソースコードを見ていると、PHPはウェブ開発において何か書けば動くという言語の特性からか、 ソースコードの自由度が高く、その人それぞれに個性が出るコーディングをしているのが見られます。 その中で""(ダブルクォーテーション)と''(シングルクォーテーション)が混在していてどのように使い分けられているのだろうか、と気になりました。 大きな違いとしては引用符の中で「変数を展開するか」と「特殊文字が機能を発揮するか」の
続きを読む

WordPress関数 外部利用

2016年11月2日

WordPressの関数はかなり簡単に使える上にとても強力です。そんな関数を例えば外部処理で使いたいというときには 次のようにするととても簡単です。 do_test.phpという外部ファイルでwp関数を使うときは ``` require_once( dirname(dirname( __FILE__ )) . '/wp-load.php' ); ``` 基本的に上のコードではdo_test.phpの階層がwp-load.phpよりも深い想定でのファイル
続きを読む

SeleniumでのElement is not clickableエラー

2016年10月28日

Seleniumで自動テストを実行する際に、以下のようなエラーが出ました。 ``` WebDriverError: unknown error: Element is not clickable at point (767, 505). Other element would receive the click: ... ``` 上記のエラーはclickイベントをある要素に対して行おうとした時にクリックできませんでした、間違えて ``` ... ```
続きを読む

XPathでWebページの要素を検索する

2016年10月26日

### XPathの取得 デベロッパーツールでHTMLの要素を右クリック→"Copy"→"Copy XPath"で希望の要素のXPathを取得することが出来ます。 ### XPathで検索 上記の方法で簡単にある要素のXPathを取得することが出来ましたが、 逆にソースコード等に含まれるXPathが本当にその要素を示しているのか、チェックするには ChromeのデベロッパーツールでConsoleを表示して以下のスクリプトを書いてやれば確認できます
続きを読む

Gitエラー【fatal: Unable to create ‘path/.git/index.lock’: File exists.】

2016年10月26日

コミットする前にpullし忘れてしまい、コンフリクトが起こってしまったのでコンフリクトを解消しようとgit resetしようとしたところ Gitでのエラーで以下のようなものが出てしまいました。 ``` fatal: Unable to create 'path of project/.git/index.lock': File exists. If no other git process is currently running, this probably
続きを読む

Seleniumでclickメソッドが上手く機能しない

2016年10月21日

Seleniumでnode.jsを用いてボタンクリックの動作を以下のように実装したら上手く機能しなかったので、 別の方法でボタンクリックを実現したいと思います。 ``` driver.findElement(By.name("publish")).click(); ``` これでは上手くいかなかったので ``` driver.findElement(By.name("publish")).sendKeys(webdriver.Key.EN
続きを読む

PhpStormでのGitエラー解消

2016年10月14日

特に何もしてないのにPhpStormで"Can't start Git"という警告が出てきて、確認するとたしかに今までターミナルに表示されていたブランチ名やステータスが表示されなくなり、それは困るので以下のように解決します。 ターミナル上で ``` $sudo xcodebuild -license ``` でlicense agreementsを表示させページを送っていき最後にagreeと入力すれば何の問題もなく解決します。 しかしなぜこの問題が生じたのかは
続きを読む

Node.jsで外部ファイルから関数を呼び出す

2016年10月12日

Seleniumでも使われているNode.jsで外部ファイルから関数を呼び出すことが出来ます。 普通にフロントエンドで使うjavascriptではjQueryを用いたりHTMLタグを使ってscriptタグを使ったりと面倒くさいのですが Node.jsではexportsを使うことで簡単に実現できます。 まず外部ファイルをexport.js,呼び出す側のファイルをimport.jsとします。 **export.js** ``` exports.sayHello
続きを読む

seleniumによる自動テストのスマートフォン画面での実現

2016年10月7日

Chromeのデベロッパーツールでは画面表示をスマホに切り替えられるのですが、同じように自分の作ったウェブページを スマホで表示した用の自動テストが行えるようにするには以下のコードを付け加えればOKです!! 前提として自動テストコードがjavascriptで書かれている事、SeleniumでChromeDriverを導入していることが必要です。 ``` var webdriver = require('selenium-webdriver'); va
続きを読む

javascriptでHTMLの要素を作る

2016年10月7日

基本的にHTMLは静的で読み込まれた時点で多くの要素が予め記述されているのですが あえて、レンダリングされてから要素を作成したい、とかこのタイミングで要素を挿入したい、といったことが起こるので 今回はjavascriptを用いてCSSの以下のlinkタグを動的に生成したいと思います。 ``` ``` ``` var elem = document.createElement('link'); l.rel = 'stylesheet
続きを読む

リダイレクトのステータスについて

2016年9月28日

30X系のリダイレクトのステータスについてまとめました。 ### **301** 恒久的なURLの変更を示す。サイトリニューアルでURLが変更になった場合とか、本来アクセスされるURLとは異なるURLへのアクセスを制御させたい時とかに使う。 ### **302** 一時的なURLの変更を示す。たとえばサーバーエラーが発生したときにエラーページへリダイレクトする場合とかに使う。 最も広く使われるリダイレクトのステータスコード。 ### **30
続きを読む

preg_matchの正規表現で論理積を用いる

2016年9月5日

正規表現で論理積を用いて2つ以上の正規表現を含んでいるかどうかを確認するには次のように記述すればよいです。 ```
続きを読む

WordPressで特定のページをリダイレクトする方法

2016年9月5日

下書きページの存在など見せたくないページがあるときにそのページのURLを知っているユーザーからは直リンクで見られてしまうこともあります。 幾つかの方法でそのようなページにアクセスした際に他のページヘリダイレクトして特定ページヘアクセスさせないようにできます。 今回は2つの方法を紹介したいと思います。 変数としてアクセスさせたくないページのURLを$source_url,飛ぶ先のURLを$dest_urlとします。 # 1,add_rewrite_ruleを利用
続きを読む