リンク画像が見えなくなる

2013年6月16日 at 2:25

はじめまして。
concrete5をはじめて1年ほどです。今回、カスタムページを作成しそのページにリンクした画像を表示させるのですが編集モードで編集しているときはリンク画像は見えているのですがほかのページに移り元に戻るとリンク画像が見えなくなります。その場合URLがindex.php?ID=120となっているときは見えてページの名前で編集したページに戻ったときは画像が表示されなくなります。またindex.php?ID=120でリンクしてもページの名前で変更されてリンクされるためリンク画像が見えなくなります。この状況はどういうことなのかわかりません。大変恐縮ですがどなたかご教授いただけたら幸いです。
よろしくお願いいたします。

CONCRETE5.4.2.2を使用しています。
PHP5.3.3
Mysql5.0.95

タグ:

Re: リンク画像が見えなくなる

2013年6月17日 at 7:21
「カスタムページを作成しそのページにリンクした画像を表示させる」というのがどういう内容の作業をなさっているのかもう少し詳しく教えてもらえますか?
なんとなく、画像のURLを src="image/hogehoge.jpg" の様に相対パスで記述しているため、 編集中は /index.php?cID=69 というURLで見ているため見えているが、公開すると /about/ のようにスラッシュがついてページの階層が変わってしまうので、見えなくなるのではないかと思います。
 

Re: リンク画像が見えなくなる

2013年6月17日 at 17:24
早速のご対応ありがとうございます。
そうです。
/index.php?cID=120で編集ていて、ここを全ページのHTMLでリンクしているのですが/index.php?cID=120のところがページを作成した名前で/page1/page2/と言う風になります。
他にもfooterにHTMLを挿入してhrefでリンクをしています、ここでは新規ページを作成してそのページのリンク先/index.php?cID=122,/index.php?cID=121へのリンクはできます。しかし以下のページでbuttonの画像をつけたとろは表示しなくなります。

記事ブロックを使用したリンクでは/index.php?cID=120とリンク先を指定しても作成したページ名/page1/になります。
ここにフラッシュのプレイヤーを埋め込みたいのです。
(htmlを入れようとしたらここでは表示されませんでした)<object type="application/x-shockwave-flash" data="player_mp3_multi.swf"><param name="FlashVars" value="configxml=configxml_multi.xml" /> このplayer_mp3_multi.swfとconfigxml=configxml_multi.xmlのファイルをトップディレクトリにおくと編集画面では表示しています。しかし編集を終了し他のページからリンクすると最初に記したようになり表示が出来なくなります。
 

Re: リンク画像が見えなくなる

2013年6月18日 at 4:58
ファイルマネージャーを使っていただくのが一番いいと思いますが、とりあえず "player_mp3_multi.swf" を "/player_mp3_multi.swf" と、スラッシュから始まるように書き換えていただければ問題ないと思います
 

Re: リンク画像が見えなくなる

2013年6月18日 at 8:52
Audio player として Flash を使いたいのであれば、方法は2つ。

1、本家マーケットプレイスで Flash 関連のアドオンが有るんで、それを試してみる。
  本家アドオンー Flash 関連アドオン [ LINK ]

※ 今回は、オーディオ関連だから、そこそこにプレイヤーがあるんでお試しあれ。
 特に HTML5関連が最近充実していると思います。
 また、concrete5-Flash-外部ファイルの読み込みのお手本ともいえます。


2、既存の概念とやり方を考えた場合、以前の方法で行くと、mp3 を任意に埋め込みたい場合は、オリジナルテーマからの自作方法しかないと思う。

Flash は最近のはどうかはわかりませんが、hissyさんの案で行くと、ファイルマネージャーの中に Flash 自体が組み込まれると、Flash から他の外部ファイルを読み込みをする場合、連携が取れなくなるんで、問題が起りえる。Flash は外部ファイルは同階層に置く!というルールがあるからなんですが。。。

concrete5 のオリジナルテーマ作成の手順の通り作成。そのファイル構成。
ドメイン / themes / 下記のディレクトリーファイルを置く。

あなたのテーマ名 / elements / header.php , footer.php などなど
         / images / 画像ファイルなどのイメージをここへ
         / css /
         / js /
         / default.php
         / description.txt
         / typography.css
         / view.php
         / thumbnail.png
         / player_mp3_multi.swf
         / mp3 ファイルをこのように同階層へ置く

または... /flash 以下のファイルをインクルードさせる方法
あなたのテーマ名 / elements / header.php , footer.php
         / default.php ここのファイルで下記
         / flash / flash_mp3player.php ここにあなたの html を貼付け
         / flash / player_mp3_multi.swf
         / flash / mp3 の各種ファイル つまり swf と同階層という意味


参照1::/ default.php のソース concrete5 のデフォルトのソースの次に下記のように埋め込む

<? php defined('C5_EXECUTE') or die("Access Denied.") ;?>
<? php $ this->inc('flash/flash_mp3player.php') ;?>
以下通常の default.php の内容...

※ 上記 flash/ が抜けていたので、訂正です。


参照2::/ flash / flash_mp3player.php
<? php defined('C5_EXECUTE') or die("Access Denied.");?>
ここにあなたの html を貼付け

これで読み込まれると思います。


上記のような2つの方法が考えられます。試行錯誤してみてください。
 

Re: Re: リンク画像が見えなくなる

2013年6月19日 at 1:11
hissyさんの言われるファイルマネージャーにswfとxmlをインポートし記事ブロックにhtmlを書きました。swfファイルの前に/を入れましたが表示されませんでした。

tomoyaさんの1.は使用しているバージョン違いでhtml5_audio_player_basicとflash_galleryを試そうとしましたが使えませんでした。
2.のほうですがthemesのテーマフォルダにflashを作成して同階層にファイルを置きましたが編集画面でどう対応するのかよくわかりませんでした。

結局、リンクを作成するブロックに画像を使ってリンクを張ったら階層が変わらずindex.php?cID=120を表示しました。そのため、/page1/page2/のようにならなかったので一応これで目的は出来たのですがこれでいいのだろうかと疑問も残ります。なぜなら_blunkが使用したかったので記事ブロックを使用していたことと、機能面で多機能なことが使う理由だったのでちょっとくやしいです。ここに投稿する前にはtomoyaさんの2.の案でいけるのではと考えてトライしていたんですが私のスキルでは解決できませんでした。
問題が起こらなければ「画像」ブロックを使用していこうと思います。

皆さん、初めての投稿者にご親切にありがとうございました。
ところであわててIDを作成したため番号で作ってしまいました。これは変更できないんですかね。後で修正すればいいかと思っていたんですが画像も入れられないしほかの修正も出ませんでした。また、投稿内容をpostすると考え込んでしばらく次の画面に行かなくなりました。解決方法はあるんですか、それとも作成しなおさなければならないんですか。
 

Re: リンク画像が見えなくなる

2013年6月19日 at 16:03
うーん。記事ブロックではなくHTMLブロックを使ったほうがいいかもしれませんね…。
 

Re: Re: リンク画像が見えなくなる

2013年6月19日 at 18:46
HTMLも駄目でした。
 

Re: リンク画像が見えなくなる

2013年6月18日 at 23:34
hissyさん、tomoyaさん、アドバイスありがとうございます。

私にあまりスキルがないものですから時間を少しください。

試してみます。

AUDIO PLAYERをFLASHで置くのには多数のアーティストを管理していきます。
サウンドデータ管理もわかりやすい方法などあればご教授いただけたらと思います。
 

Re: リンク画像が見えなくなる

2013年6月19日 at 13:43
ここまである程度明らかになれば、concrete5 を使って3227さんがしたい事が見えてきました。
(とはいえ、多機能Flash がどんな機能があるのかわからないとここまでですが。)

1、お試ししたいアドオンを導入するために、c5422-c5521-c5612 バージョンへアップグレード。なんらかしらの理由がない限り、それが一番いいかなと思います。


2、どうしてもFlash が使いたいのなら...
例1、「ページタイプ」を作成し、そこにFlash を埋め込む。(下記の3ですね)
 ①、オリジナルテーマ作成+追加ページタイプ flash.php (中身は Flash を表示させるHTML)

例2、「サイトマップ」で外部リンクを作る。
 ①、別なところにhtmlを作成し、そこにFlash を埋め込む。
 ②、c5 でリンク先を上記へ。(スマートじゃないけど)
 ③、または、c5内でインラインフレームを使う。(スマートじゃないけど)
   インラインフレームのアドオンなどを使用して。


3、私が提示した2番目は「オリジナルテーマ」を作成案です。
 オーバーライドの機能を使って、あなたのサイト/ concrete / themes / defalt または、greek_yogurt のテーマをフォルダー毎に、あなたのサイト/ themes / のディレクトリーをコピーして、テーマを少しずつ改造して行く方法です。
(オリジナルテーマを作成するに勉強になるかと思います。)


4、さっするに、mp3プレイヤーがあって、mp3 のリストと、アルバムのタイトルや写真、キャプションが欲しいかと思いますので、hissyさんの案の「ファイルマネージャー」で管理するというのが、デフォルトかもしれません。

下準備:
 ①、管理は、ファイルマネージャーで「mp3 / Image画像やサムネール」をアップし、素材はそこで管理する。

   またアップロードの際に、「セット」を利用し、それをアーティスト名やアルバム名などを入れて、グループ分け、カテゴリー分けなどご自由に。セットなどは、「ファイルマネージャー属性」を新規で作ったり、素材ひとつひとつに、説明文をいれたりなどの管理が秀逸。検索もしやすい。

 ②、2階層ページは、リストページ。
   3階層以下から、ページ1枚作成し mp3 の「ページタイトル」にする。
   ページにキャプション・mp3の説明分・サムネールなどの「ページ属性」をつけてもいいでしょう。

 ③、「ページ」内では、詳細として、mp3 + mp3タイトル+写真+キャプションなど
   アドオンを利用する。

 ④、2階層のリストページに「ページリスト」を使用して、ページタイトルがそれぞれ表示させるようにする。


例1:
ファイルマネージャー=(mp3管理+写真アルバムサムネール)+(ページ+ページリスト)


例2:
ファイルマネージャー+サイトマップ(コンポーザーまたは、スタック)+ページタイプ+ページリストのコンボ ということが、まぁ〜大体の設計予想です。


などなど、いろんなやり方があると思います。試行錯誤ですね。
 

Re: リンク画像が見えなくなる

2013年6月19日 at 15:41
tomoyaさん、いろいろご親切に情報ありがとうございます。

ファイルマネージャーにグループの機能があるんですね。試してみます。

それからconcrete5.6にしてアドオンも試してみたいと思います。

いろいろとありがとうございました。

試行錯誤してみます。