In breve: È possibile strutturare la mappa tematica principalmente come si desidera. Tranne per default.php, view.php, description.txt e thumbnail.png. Il nome e la posizione di typography.css possono essere modificati, ma ho trovato solo un sorgente per la versione 5.6. Nella versione 5.7 typography.css non è più usato perché il wysiwyg-editor è cambiato. Tuttavia, è possibile aggiungere stili personalizzati al nuovo editor WYSIWYG.
risposta completa
Esempio cartella del tema:
css (css folder)
js (javascript folder)
img (or images)
elements (php files that I want to include)
view.php
default.php
thumbnail.png
description.txt
Il thumbnail.png, description.txt, view.php (per pagine singole) e default.php bisogno di essere direttamente sotto la cartella del tema .
Negli elementi della mappa creo un header.php e footer.php (ma se necessairy si può mettere più file lì, come un sidebar.php o qualcosa di simile)
per collegarsi al header.php e piè di pagina .php, ho posto questo codice nel default.php e view.php alla linea corretta:
//version 5.6 and below
$this->inc('elements/header.php');
$this->inc('elements/footer.php');
//version 5.7 and higher
$view->inc('elements/header.php');
$view->inc('elements/footer.php');
la funzione inc() in concrete5 è stata fatta appositamente per includere elementi che è per questo che preferisco usare che invece della normale funzione include di php. Ecco un esempio di default.php: http://pastie.org/9784547
Nel mio header.php e/o footer.php si vorrebbe aggiungere css e js personalizzati. Per fare questo è possibile utilizzare questo codice:
//version 5.6 and below
<link rel="stylesheet" media="screen" type="text/css" href="<?php echo $this->getThemePath() ?>/css/main.css" />
<?php echo '<script src="'.$this->getThemePath().'/js/concrete.js"></script>'; ?>
//version 5.7 and higher
<link rel="stylesheet" media="screen" type="text/css" href="<?php echo $view->getThemePath() ?>/css/main.css" />
<?php echo '<script src="'.$view->getThemePath().'/js/concrete.js"></script>'; ?>
Esempio di header.php: http://pastie.org/9784546
Avviso il typography.css non è stato aggiunto su header.php.
typography.css viene automaticamente caricato nel sistema per essere utilizzato nell'editor wysiwyg. Per cambiare il nome e la posizione di typography.css, dovrai sovrascrivere la funzione getThemeEditorCSS().
Questo funziona solo sulla versione 5.6.
Procedura: http://concrete5tricks.com/blog/rename-or-move-typography-css
Se si utilizza la versione 5.7
Creare un file di paging-theme.php nella root della vostra cartella del tema.
per definire gli stili personalizzati aggiungere nella pagina-theme.php:
<?php
namespace Application\Theme\Your_Theme_Name;
class PageTheme extends \Concrete\Core\Page\Theme\Theme {
public function getThemeEditorClasses(){
return array(
array('title' => t('Title Thin'), 'menuClass' => 'title-thin', 'spanClass' => 'title-thin'),
array('title' => t('Title Caps Bold'), 'menuClass' => 'title-caps-bold', 'spanClass' => 'title-caps-bold'),
array('title' => t('Title Caps'), 'menuClass' => 'title-caps', 'spanClass' => 'title-caps')
);
}
}
?>
(non dimenticate di cambiare il proprio nome in Your_theme_Name tema della cache + chiaro dopo stili aggiungendo)
Fonte: http://www.concrete5.org/community/forums/5-7-discussion/adding-redactor-custom-styles-in-a-theme/