【環境情報】
・baserCMSのバージョン:5.1.0-dev
・レンタルサーバー名:local docker
・使用テーマ:
・PHPスキル(自己評価):C
Contentにeyecatchを登録できる、
例えばトップページにもeyecatchを登録できますが、
このeyecatchを出力するヘルパーなどはありましたでしょうか?
ブログの場合は、以下のようにあるみたいですが、
$this->Blog->eyeCatch($post, $option);
これのContent版みたいなヘルパーはありましたでしょうか?
arata
2
@hideichi こんにちは!
Content版はなくって、UploadHelper::uploadImage() を利用することになりそうです
こんな感じで行けるかな、と思うんですが少し見ていただけますか
<?php echo $this->BcUpload->uploadImage('Content.eyecatch', $this->BcBaser->getCurrentContent(), ['imgsize' => '']) ?>
だめだったら他のアドバイスを待ちましょうー
@arata
ご返信ありがとうございます!
tableを指定しろと怒られたので、次のようにしたのですが、空の配列が返ってきました。
$content = $this->BcBaser->getCurrentContent();
$eyecatch = $this->BcUpload->uploadImage('Content.eyecatch', $content, ['table' => 'BaserCore.Contents']);
Contentのeyecatchは、テーマ以下のフォルダには保存されていないようなので、(たぶん、)
pathをfiles/contents/'に決め打ちして、とりあえず以下のようにしてます。
$content = $this->BcBaser->getCurrentContent();
if ($content->has('eyecatch') && !is_null($content->get('eyecatch'))) {
$path = 'files/contents/' . $content->eyecatch;
}
それだったら、こうするのが良いと思うよー、
などなど何かありましたら、他にもお願いしますー
「いいね!」 1
自己返信、
以下で取れましたー
$content = $this->BcBaser->getCurrentContent();
$eyecatch = $this->BcUpload->uploadImage('eyecatch', $content, ['table' => 'BaserCore.Contents']);
「いいね!」 3
arata
5
@hideichi すてきです!ご共有ありがとうございますー!