All posts by admin

Coding at Mac OSX

Mac OSX のローカル環境でApache, MySQL, PHP 環境が試したくなり、VMなどいろいろ便利なパッケージがありそうだが、一番基本な方法で揃いたい。

Apache

ApacheもMacOS X 内蔵されたので、そのまま利用
$ # Stop
$ sudo apachectl start
$ # Start
$ sudo apachectl start
Apacheの動作確認
sh-3.2# httpd -v
Server version: Apache/2.4.16 (Unix)
Server built:   Aug 22 2015 16:51:57
 ブラウザで下記のURLで動作確認。

http://localhost/

Web Rootは /Library/WebServer/Documents/ にある。

PHP

php有効にする

PHPもMacOS X 内蔵されたので、そのまま利用。
まず、httpd.conf に phpモジュール行のコメントを外す
# LoadModule php5_module libexec/apache2/libphp5.so
$ sudo vi /private/etc/apache2/httpd.conf
それからApacheを再起動
$ sudo apachectl restart

なう、/privateは隠しフォルダのため、Finderで探して修正する場合、以下のキーを同時に押下し、隠しフォルダ・隠しファイルが表示するように。

[command] + [shift] + [.(ドット)]

上記のショートカットキーで表示・非表示を切り替えられる。

info.phpでphp動作確認

Filename: info.php


<?php

// Show all information, defaults to INFO_ALL
phpinfo();

?>
 ブラウザで下記のURLで動作確認。
http://localhost/info.php

 

MySQL

MySQL のインストール方法は複数あり、ここではbrew でインストールと本家からダウンロード してインストール方法を紹介

brew でインストール

OSXにHomebrewをインストールする

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

ローカルの環境(Mac)に MySQL をインストール

$ brew install mysql

MySQLを起動する

$ mysql.server start

Starting MySQL
. SUCCESS!

ダウンロードしてインストール

MySQLはMacOS Xにないので、本家からダウンロード
ダウンロードしたファイルをインストールする。

WordPressインストール

wp-cli install

$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 4487k 100 4487k 0 0 956k 0 0:00:04 0:00:04 –:–:– 911k

$ chmod +x wp-cli.phar

$ mv wp-cli.phar /usr/local/bin/wp

$ wp –info
OS: Darwin 17.7.0 Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64 x86_64
Shell: /bin/bash
PHP binary: /usr/bin/php
PHP version: 7.1.16
php.ini used:
WP-CLI root dir: phar://wp-cli.phar
WP-CLI vendor dir: phar://wp-cli.phar/vendor
WP_CLI phar path: /Users/chen
WP-CLI packages dir:
WP-CLI global config:
WP-CLI project config:
WP-CLI version: 1.5.1

WordPressインストール

sh-3.2# cd /Library/WebServer/Documents
sh-3.2# wp core download –locale=ja –path=wordpress –allow-root
Creating directory ‘/Library/WebServer/Documents/wordpress/’.
Downloading WordPress 4.9.7 (ja)…
md5 hash verified: b4aea3d0f3353ff1bb5ccdb246732574
Success: WordPress downloaded.
sh-3.2#
設定ファイル生成

sh-3.2# wp core config –dbname=wp_test –dbuser=root –dbpass= –dbhost=localhost –allow-root –path=wordpress

Success: Generated ‘wp-config.php’ file.

データベース作成

sh-3.2# mysqladmin -u root create wp_test
sh-3.2#

WordPressセットアップ

http://localhost/wordpress/

 

参考資料

Dreamhost Hosting

DreamHostには、One-Click-Installsという機能があり、WordPressとMySQLを10分程度で簡単にインストールすることができる。

1)サイト追加

新しいサイトにWordPressインストールするなら、まずサイトを追加する。

管理画面から「Manage Domains」を開き、「Add Hosting to a Domain / Sub-Domain」をクリックして追加する。ドメイン名など適切なパラメータを設置し、「Fully host this domain」でサイト作成。

2)「One-Clock Installs」選択

「One-Clock Installs」ページで「WordPress」を選ぶ。

3)インストール先のサイト選択

先ほど追加したサイトのドメイン名を選ぶ、インストールパス、DB名はそのままでも良い。「Install it for me now!」をクリック。インストール結果メール待ち。

4)パスワード再設定

インストール結果メールには、パスワードリセットするリンクがついてるので、クリックしてパスワード再設定する。

5)サイトにログイン

メールアドレスと再設定したパスワードでサイトにログイン。

 

WordPressのツール「Press This」

「Press This」とは

WordPressの管理画面にログインし
[ダッシュボード]→[ツール]→[利用可能なツール]と開きます。

開くと図の様なページが表示されます。

この「Press This」と言うツールを使います。

このPressThis、簡単に言うと、
任意の記事から、掲載したい記事を抜粋して
簡易投稿画面から投稿可能と言う優れものなんです。

Press Thisの使い方

では使い方の解説です。

先ほど開いた画面の図のボタンを
ブックマークバーにドラッグ&ドロップで追加します。

次に、掲載したい記事を開きます。

 

記事の掲載したい部分をドラッグで選択し・・・

 

先ほど追加した[PressThis]ボタンをクリックします。

 

自身のブログにログインしていない場合は
ログインを促されますのでログインしてください。

 

別ウィンドウで図の様な簡易投稿画面が表示されます。

引用元もバッチリと追加してくれていますし
投稿ボタン一つでそのままサクっと投稿する事もできるので
いちいちコピーして・・・
管理画面を開き・・・
投稿から新規投稿画面を開き・・・
ペーストして編集して・・・
引用元を掲載して・・・
と言う、二度手間三度手間を省く事ができて非常に便利です。

WordPress 4.9 Press This 分離

ツールメニューにあるPress thisというブックマークレットが、4.9で削除されます。

従来から、このブックマークレットを使用している場合は、ブックマークレットをクリックすると、インストールボタンが表示されインストールできるようになります。

インストール後、古いブックマークレットをクリックすると
The WordPress bookmarklet was deprecated. Please delete it from your web browser.

と表示されるので、インストール後ツールから、ブックマークレットをセットしなおすといいようです。

新たに使う場合は、Press This — WordPress プラグインから、インストール可能です。

また wp-admin/press-this.php を開くと, 次のように表示され、プラグインをインストールするように促す:

ここでクリックして、プラグインをインストール、有効化すれば、 Press Thisが使えるようになる。

Setup TinyWebDB API

WordPressは人気のCMSであり、サーバセキュリティ、パフォーマンスチューニング、スケールアップ、クラウド対応など沢山ノウハウが蓄積された。WordPressに API機能を追加して、クライドとして利用する方法を試み。

WordPressとApp Inventorの連携

App InventorはAndroidのApp作りに簡単な環境である。そのTinyWebDBコンポーネントは、TinyDBのWeb版といったものです。タグをつけてメッセージをサーバーに保存したり、サーバーにタグ名を送信してその値を受け取ったりすることができます。あらかじめTinyWebDBにあわせてサーバー側にプログラムを用意し、そこにアクセスする形で処理を用意しなければいけません。

WordPressは人気のCMSであり、サーバセキュリティ、パフォーマンスチューニング、スケールアップ、クラウド対応など沢山ノウハウが蓄積された。WordPressをWebコンテンツを作るに最適な環境。WordPressサイトは、App InventorのTinyWebDBサービスとして利用できるか?

答えはYes.

WordPress に TinyWebDB API

WordPressに API機能を追加して、クライドとして利用する方法を試み。

WP-TinyWebDB-APIは、両者の長所を連携し、WordPressをAppInventorのTinyWebDBサービスとして利用するためのAPIを、WordPressのプラグインとして提供したもの。

本章は、WP-TinyWebDB-APIのインストール、Postman を使ってAPIの動作確認, そして第9章のWebデータベースに応用する検証を行う。

WP-TinyWebDB-APIのインストール

公式サイトを利用する

  1. FTPツールでtinywebdb-api ディレクトリー全体を WordPress の pluginsフォルダーにコピーして下さい(/wp-content/plugins/).

  2. FTP the entire tinywebdb-api directory to your WordPress blog’s plugins folder (/wp-content/plugins/).

  3. 管理パネルの「Plugins」タブ上のpluginを有効化してください。

  4. Activate the plugin on the “Plugins” tab of the administration panel.

Postman を使ってAPIの動作確認

サイトをブラウザーで開くと、普通のWordPressのサイトに見える

http://tinywebdb.ai2.work/

追加したAPI機能をみる。(これをTinyWebDBのServiceURLにセットする)

http://tinywebdb.ai2.work/api

http://tinywebdb.ai2.work/api/getvalue/?tag=questionsChenLab

image

ブラウザから取得したデータは、少々見にくい。PostmanというChrome の拡張を使うと、便利。認証、パラメタ引き渡しもできる。

image

データの送信

http://tinywebdb.ai2.work/api/storeavalue/

Webデータベースのアプリで検証

第9章のアプリから、上記のAPIへアクセスして見た。

問題なく、問題が保存できる。

image

ブラウザーからも、保存したデータの確認できる。

image

 

WP- REST-API(v2) Setup

WP4.4 からの WordPress の oEmbed ブログカード埋め込み処理でも一部使われていましたが、wp4.7 からWordPressで REST API が広く有効化されたらしく、試してみる。

まず、プラグインで導入する必要ない、デフォルトで有効になっています。

エンドポイント

試しに、サイトのURLにwp-json/を足して、v1のエンドポイントへアクセスしてみると、たくさんの文字が出力される。

http://xie.mki.biz/wordpress/wp-json/

ここで、Chromeの拡張機能のPostmanを導入して、データを見る

postman

v1より大分長くなり、なんだろう。v2から、エンドポイント変わったね!

先人のブログを参照し、Postsだけ見るにと、出力だいぶ減り

http://xie.mki.biz/wordpress/wp-json/wp/v2/posts

Postmanからデータを見る

image

この画面はなぜかGetのした、Authorizationの表示が出って。認証すると、もっと機能が増える?

認証に関して

認証に関して、v1と変わらないみたい

このAPIにおいては、認証にはいくつかの選択肢があり、基本的に以下のように選びましょう。

  • そのサイトで有効化されたテーマやプラグインから利用するのであれば クッキー認証
  • デスクトップアプリ、ウェブアプリ、モバイルアプリなどのサイトの外からアクセスするクライアントから API を利用するのであれば OAuth 認証, アプリケーションパスワード または ベーシック認証

 

OAuth 認証は複雑なので、しかもv1.0 (OAuth 1.0a specification) の難しい方だ。まず開発段階ではベーシック認証が便利でしょう。

ベーシック認証とアプリケーションパスワードは、HTTP Basic Authentication (published as RFC2617) を利用しており、Basic Auth plugin または Application Passwords plugin のどちらかを有効化する必要があります。

ベーシック認証を使用するには、ユーザー名とパスワードをリクエストごとにAuthenticationヘッダーで送信するだけです。この値は認証のたびにBase64エンドコードでエンコードされるべきです。

TinyWebDB API 0.2.2 Release

TinyWebDB API 0.2.2 Released.

Release Note

Re-write code with oo-calss style. and change from full get_post object to post_content only.

WordPress Plugin

AppInventor TinyWebDB Demo App

Change Log

0.1.0

Start TinyWebDB API plugin.

0.1.3

First alpha release which implemented Get Value Action.

0.2.0

Release which implemented Get Value Action with API Key. Add test URL on admin menu.

0.2.2

Re-write code with oo-calss style.

Free Hostinger Hosting

Hostingerでは、無料、広告なしで容量2000MBのサーバーをレンタルすることが可能です。もしも無料プランが物足りない場合、有料プランに変更することも可能です。ただ、月に100GBの転送量なので、将来有名なサイトやブログになった場合に少ない可能性があります。
その場合は有料プランに申し込めばいいのですが、その時にもっと良いレンタルサーバーが出ている可能性もあるので、独自ドメイン(有料)を取っておくと、サーバーを変えても、そのままのドメインで運営することが可能です。

Hostingerに登録する

では、Hostingerに登録してみましょう。まずはこちらのサイトをみてください。

HostingerにWordPressをインストール

では、HostingerにWordPressをインストールしてみましょう。

メニューから「レンタルサーバー」を選択し、自分のドメインをクリックすると、自動インストール機能という項目が出てきますので、それをクリックします。様々な項目がありますが、その中からWordPressを選択します。