2016年11月20日日曜日

concrete5.7で出たエラー

Call to a member function setBlockObject

珍しくconcrete5で困ったエラーが出ました。

原因は不明ですが、いつもの使い方と違うのは、エリア追加を多用したことかな。

それがダメだったのかはわかりません。


解決法

concrete5のフォーラムにこのエラーのことがあったので助かりました。

/application/blocks
の中に
core_area_layoutフォルダを作って、その中に

①controller.php
②view.php

を置く。

controller.phpの中身は

<?php
namespace Application\Block\CoreAreaLayout;
use Concrete\Core\Area\Layout\Layout as AreaLayout;
class Controller extends \Concrete\Block\CoreAreaLayout\Controller {
public function getAreaLayoutObject()
{
if ($this->arLayoutID) {
$arLayout = AreaLayout::getByID($this->arLayoutID);
$b = $this->getBlockObject();
if (is_object($arLayout) && is_object($b)) {
$arLayout->setBlockObject($b);
}
return $arLayout;
}
}
}

view.phpの中身は

<?php
defined('C5_EXECUTE') or die("Access Denied.");
$a = $b->getBlockAreaObject();
if(isset($formatter)) {
$container = $formatter->getLayoutContainerHtmlObject();
foreach($columns as $column) {
$html = $column->getColumnHtmlObject();
$container->appendChild($html);
}
print $container;
}

だそうです。

見事直りました。


直ってからこのエラーが出ていたページの編集モードに入ると、消せない&表示もされないエリアが1ヶ所あったので、そこが何かエラーになったのでしょうね。


2016年11月18日金曜日

さくらインターネットの独自ドメインでメール設定

さくらインターネットで独自ドメインを設定して、windows10のメールアプリでそのドメインを使ったメールアドレスを設定する方法です。

前提

サーバーコントロールパネルでメールアドレスの作成は済んでいる状態。

手順

①メールアプリを立ち上げて、ギアマークの「設定」をクリック






②「アカウントの管理」→「アカウントの追加」






③詳細設定に進む






④メールアドレスの情報を入力




で、最後にサインインをクリック。


これで出来なかったらおかしいんです。
一語一句間違っていないか確認してくださいね。


例外

別途お金を払ってサーバーにSSLを導入している人は、
「受信(送信)メールにはSSLが必要」にチェックが必要かもしれません。
(経験がないので不確かですが…笑)

2016年11月12日土曜日

EC-CUBE3で決済代行のイプシロン

決済完了画面でページが見つかりません

情報がなかなか見つからなくて困りました。

探して探して
試して試して
解決できなくて困っていたのですが、「EC-CUBE3 戻りパラメータ2」でググった時にこのページを見つけてやっと解決しました。

イプシロンの管理画面で、決済システム接続設定のページ

【決済完了後のリダイレクト先】と
【エラー発生時の戻り先URL】と
【タイムアウト情報送信先URL】は
(ページのURL)/shopping/epsilon_payment/complete

【戻るボタンの戻り先URL】は
(ページのURL)/shopping/epsilon_payment/back

にすれば解決しました。

phpっておかしいな~と思ってたんですよね。笑


マニュアルに書いておいてほしい。。。