私の Concrete5 内には、実際にコア機能 (コミュニティ接続) を構成する多くの単一ページを含むパッケージがあります。
検索機能を含む特定のページが 1 つあります。そのページの中央部分を取得して、何らかの方法でホームページ、div 要素などに表示する方法はありますか?
私の Concrete5 内には、実際にコア機能 (コミュニティ接続) を構成する多くの単一ページを含むパッケージがあります。
検索機能を含む特定のページが 1 つあります。そのページの中央部分を取得して、何らかの方法でホームページ、div 要素などに表示する方法はありますか?
これは jquery .load() で実行できます。単一のページで、インポートするコンテンツを一意の ID を持つ div でラップします。ホームページで、コンテンツをインポートする div を追加します
// Get the URL of the page
var url = "relative/path/to/page;
// Load the new page into the temp container
// Replace #wrapper with the selector of the element you want to import
$("#import-content").load(url + " #wrapper");
これを行うには、single_page のコントローラーに新しいパブリック関数を作成して、必要なもの (HTML でレンダリングできるデータ) を返すか、コントローラー メソッド自体にデータを含む「要素」をレンダリングさせることができます。または、MVC パターンに完全に違反する場合は、コントローラー メソッド自体に HTML 文字列を作成するだけです)。
次に、次のように、他のページからそのデータまたはマークアップを取得できるはずです。
$myController = Loader::controller('/path/to/singlepage'); //<--NOTE this is a C5 URL path (e.g. "slug"), not a server file path!
$myMarkup = $myController->myCustomFunctionIWroteToReturnSomeStuff();
echo $myMarkup;