【ショップ】EC-CUBE にAmazonのPHPコードを組み込む

EC-CUBE にAmazonのPHPコードを組み込む

EC-CUBEでは、PHPコードを取り扱うことが出来るようです。
そこで、以下のAmazonのソースコードを使えるように出来ないか検討をして見ました。
Amazon開発コードはこちら。
https://aws.amazon.com/jp/developers/getting-started/php/

しかしながら、コマンドを使ってソースコードをインストールするようですので、
Xserverでの方法をいかにまとめました。

エックスサーバー(Xserver)で「SSH」接続機能を利用する。

「SSH」(Secure Shell)とは、ネットワークを介してサーバーにログインし、Linuxの各種コマンドを実行する手段の一つです。
ネットワーク上を流れるデータはパスワード情報等を含め
全てのデータが暗号化されるため、操作を安全に行うことができます。

本機能をご利用することでファイルのコピーや削除といったサーバー上のファイル操作や、さまざまなコマンドライン操作を行うことが可能です。

———————————————————————–
■サービス対象
サーバー全プラン

■利用方法
SSH接続を利用するには、「SSH接続の有効化」と「公開鍵」の登録または「公開鍵認証用鍵ペアの生成」が必要になります。サーバーパネルにログイン後、「SSH設定」より設定・登録を行う。

※SSHで接続を行うには、SSH接続に対応したクライアントソフトが必要。

環境の立ち上げ準備

XserverでSSHの設定を行う。
https://www.xserver.ne.jp/manual/man_server_ssh.php

PCにダウンロードしたTeraTermの設定を行う。
https://www.xserver.ne.jp/manual/man_server_ssh_connect_tera.php

Tera Term Home Page
※※こちらの手順はSourceForge.JPにて公開されているバージョン4.96にて記載しています。
teraterm-4.96.exe
http://ttssh2.osdn.jp/

※ウイルスセキュリティを使っている場合、タイムアウトにより接続が出来ない場合があります。
以下の対策を行い、必要なポート設定を行いましょう。また、必要に応じてアプリケーションの許可もしましょう。
http://www.sourcenext.com/support/qa/?faq=VS-01416&c=c26ab9ff-d3ab-43e0-a5f1-751bb20fd561

Amazon開発コードはこちら。
https://aws.amazon.com/jp/developers/getting-started/php/

 

Xserverのフォルダの位置を確認する。

上記までの設定で、成功しているのであれば、
TeraTerm上で

ls(フォルダの表示)

と打ってみましょう。

これで、Xserverのファイルマネージャと同フォルダ構成が表示されれば成功です。

cd  ./移動したいフォルダ名

と打っていくことで、コマンドでファイルの作業場所を移動できますので、

いよいよEC-CUBEのダウンロードしたフォルダに移動していきます。
(ここは、皆さんのインストールした場所になりますので、どこにインストールしているのか覚えておいてください。)

https://www.xserver.ne.jp/manual/man_install_auto_ec.php

ここまで準備できたものの、ECCUBEのどこにインストールするかがわからない。

ここからは、独自に調査したものになるので、参考までにして、自己責任でお願いします。

ECCUBEは、わかりやすいと言いながら、
結局カスタマイズがやり方がわからないですので、一般的に公開されているプラグインを使って攻めてみたいと思います。

https://www.ec-cube.net/plugin/

ここのHPに載っている、サンプルプログラム「カテゴリーコンテンツプラグイン」を入手する。

手助けになるのは、この2つのドキュメントだけ。
http://downloads.ec-cube.net/manual/v3/plugin.pdf

EC-CUBE3プラグイン仕様

概要。

EC-CUBE3は、フレームワークとしてSymfony2 ComponentsベースのSilexを利用しています。
そのため、リクエストを処理しレスポンスを返すまでの内部的な動作は、Symfony2のHttp Kernelのライフサイクルにしたがって実行されます。
また、Http Kernelでは、各ステップで処理を差し込めるeventという仕組みがあります。

→ボン!(頭がフリーズ。)さっそく専門用語。。。

http kernelのライフサイクル:
http://symfony.com/doc/current/components/http_kernel.html
ボン!ボン!!英語のページを見る!!とは。ありえない。。。

http kernelってところで標準的な方法が定義されているけど、EC-CUBEでも独自にアレンジしてるよ。
開発者はいろいろなイベントが用意されているから、関数登録できるよ!と言うことだと理解してみる。

 

プラグインでできること

新規ページの作成
プラグインから独自のページを定義することができます。

既存機能の変更・拡張
フックポイントを利用し、フォームへの項目追加や、検索クエリの変更、テンプレートやビューの変更、
メール本文の変更等が可能です。

 

プラグインの作り方

ついにきました。

1.プラグイン名、プラグインコードを決める
1-1.規則・機能に則したプラグイン名・プラグインコード名の命名

2.必要となるファイルを用意し、開発をする
2-1.config.yml, PluginManagerにプラグインの情報を定義
2-2.Migrationファイルを記載
3.圧縮し、パッケージングする

具体的なやり方は、マニュアルを見ながら以下を探すのがよさそうです。

https://qiita.com/tags/ec-cube3

 

EC-CUBE3開発者ドキュメント

こちらの方が、具体的なサンプルコードとともに記載があるため、
手を動かしながら理解が出来そうです。

http://doc.ec-cube.net/plugin_tutorial

 

サンプルプロジェクトのダウンロード

git clone https://github.com/awslabs/aws-php-sample.git

上記のコマンドを打つ必要がある。
これをEC-CUBEのどこに入れるか。

SDK および依存関係のインストール

aws-php-sample ディレクトリから以下を実行します。

curl -sS https://getcomposer.org/installer | php

php composer.phar install


アクセスキーの設定

~/.aws/credentialsWindows ユーザーの場合は、C:\Users\USER_NAME\.aws\credentials)に認証情報ファイルを作成し、下線部分の値を自分用の値に置き換えてから以下の行を保存します。

[default]

aws_access_key_id = YOUR_ACCESS_KEY_ID

aws_secret_access_key = YOUR_SECRET_ACCESS_KEY


サンプルの実行

php sample.php

AWS SDK for PHP Sample Project

A simple PHP application illustrating usage of the AWS SDK for PHP.

Requirements

A composer.json file declaring the dependency on the AWS SDK is provided. To install Composer and the SDK, run:

curl -sS https://getcomposer.org/installer | php
php composer.phar install

Basic Configuration

You need to set up your AWS security credentials before the sample code is able to connect to AWS. You can do this by creating a file named “credentials” at ~/.aws/ (C:\Users\USER_NAME\.aws\ for Windows users) and saving the following lines in the file:

[default]
aws_access_key_id = <your access key id>
aws_secret_access_key = <your secret key>

See the Security Credentials page for more information on getting your keys. You can also set your credentials in a couple of other ways. See the AWS SDK for PHP documentation for more information.

Running the S3 sample

If you are using IAM security credentials, the user account must have the Full S3 Access policy attached.

This sample application connects to Amazon’s Simple Storage Service (S3), creates a bucket, and uploads a file to that bucket. The sample code will generate a bucket name and a file for you, so all you need to do is run the code:

php sample.php

The S3 documentation has a good overview of the restrictions for bucket names for when you start making your own buckets.

License

This sample application is distributed under the Apache License, Version 2.0.

 

PHPフレームワーク Laravel入門
  • 価格   ¥ 3,240
  • メーカー掌田津耶乃
  • 販売者 Amazon.co.jp



今すぐAmazon公式をチェック
いきなりはじめるPHP~ワクワク・ドキドキの入門教室~
  • 価格   ¥ 1,944
  • メーカー谷藤賢一
  • 販売者 Amazon.co.jp



今すぐAmazon公式をチェック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です