XH: alternatives Seitensplitten unabhängig von <hx> - Tags
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Seht ihr irgendeine Möglichkeit, einen "alten" Inhalt in das neue Split-CMSXH zu übertragen?
Oder andersherum.
Kann man eine "alte" Installation updaten?
(Das ist jetzt eine "weitsichtige" Frage, denn der neue Pagemanager ist ja noch nicht da.)
Oder andersherum.
Kann man eine "alte" Installation updaten?
(Das ist jetzt eine "weitsichtige" Frage, denn der neue Pagemanager ist ja noch nicht da.)
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Betrifft nicht nur Split_XH sondern auch die normale Version:
$tx['submenu']['heading'] (in deutsch: "weiter zu:") sollte nicht in irgendein <hx> gepresst werden.
Das kann u.U. die mühsam aufgebaute Struktur stören.
$tx['submenu']['heading'] (in deutsch: "weiter zu:") sollte nicht in irgendein <hx> gepresst werden.
Das kann u.U. die mühsam aufgebaute Struktur stören.
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Dafür sollte auf jeden Fall wenigstens ein kleines Upgrade-Script entwickelt werden, was nicht allzu schwer sein sollte. Hier mal Entwurf für die userfuncs.php einer 1.6.7 installation:frase wrote:Seht ihr irgendeine Möglichkeit, einen "alten" Inhalt in das neue Split-CMSXH zu übertragen?
Code: Select all
<?php
if (defined('XH_ADM') && XH_ADM && $edit) {
convertContents();
}
function convertContents()
{
global $pth, $cl, $c, $l, $h, $pd_router, $cf;
$ml = $cf['menu']['levels'];
$stream = fopen("{$pth['folder']['content']}content_new.htm", "w");
for ($i = 0; $i < $cl; $i++) {
fwrite($stream, "<!--XH_ml{$l[$i]}:{$h[$i]}-->\n");
fwrite($stream, $pd_router->pageAsPHP($i));
fwrite($stream, preg_replace("/<h[1-$ml].*?<\/h[1-$ml]>\s*/", '', $c[$i]));
}
fclose($stream);
}
Christoph M. Becker – Plugins for CMSimple_XH
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
in händisch angelegten Newsboxen (<!--XH_ml1:News01-->) lassen sich weder <h1> noch <h2> verwenden.
Sie werden nicht angezeigt.
Erst ab <h3> klappt es.
Habe ich da einen Denkfehler?
Sie werden nicht angezeigt.
Erst ab <h3> klappt es.
Habe ich da einen Denkfehler?
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Schnell probiert:cmb wrote:Dafür sollte auf jeden Fall wenigstens ein kleines Upgrade-Script entwickelt werden, was nicht allzu schwer sein sollte. Hier mal Entwurf für die userfuncs.php einer 1.6.7 installation:
...
Nachdem dies "installiert" wurde, einfach Einloggen, und dann sollte auch schon content/content_new.htm erzeugt worden. Diese dann einfach in die XH_split Installation einfügen und zu content.htm umbenennen.
Funktioniert (auf den ersten Blick) hervorragend.
Eine Sorge weniger
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Guter Punkt! Für XH 1.6.x würde ich da aber nichts mehr ändern; wer will, kann ja eine der bestehenden Addon-Varianten oder SEO_XH nutzen (ansonsten stimmt ja die Struktur sowieso nicht). Aber für XH 1.7 sollte da unbedingt nachgebessert werden, zumindest wenn wir die neue Split-Variante übernehmen. Bin aber nicht sicher, wie wir das lösen könnten/sollten. Analog zum neuen $cf['headings']['format'] ist ein bisschen problematisch, weil der User da sicher kein fixes hX vorgeben möchte. Eventuell gar kein <hX> verwenden? Aber was statt dessen?frase wrote:Betrifft nicht nur Split_XH sondern auch die normale Version:
$tx['submenu']['heading'] (in deutsch: "weiter zu:") sollte nicht in irgendein <hx> gepresst werden.
Das kann u.U. die mühsam aufgebaute Struktur stören.
Nein, im Gegenteil. Die function newsbox() müsste noch angepasst werden. Folgende Variante sollte es vielleicht schon tun:frase wrote:in händisch angelegten Newsboxen (<!--XH_ml1:News01-->) lassen sich weder <h1> noch <h2> verwenden.
Sie werden nicht angezeigt.
Erst ab <h3> klappt es.
Habe ich da einen Denkfehler?
Code: Select all
function newsbox($heading)
{
global $c, $cl, $h, $cf, $edit;
for ($i = 0; $i < $cl; $i++) {
if ($h[$i] == $heading) {
$body = $c[$i];
$pattern = '/#CMSimple (.*?)#/is';
return $edit
? $body
: preg_replace($pattern, '', evaluate_scripting($body, false));
}
}
return false;
}
Christoph M. Becker – Plugins for CMSimple_XH
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Definitiv kein <hx> sondern eine CSS-Klasse. (.xh_subHeading ?)cmb wrote:Eventuell gar kein <hX> verwenden? Aber was statt dessen?
Last edited by frase on Sat Nov 26, 2016 12:29 pm, edited 1 time in total.
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
cmb wrote:Für XH 1.6.x würde ich da aber nichts mehr ändern; wer will, kann ja eine der bestehenden Addon-Varianten oder SEO_XH nutzen (ansonsten stimmt ja die Struktur sowieso nicht). Aber für XH 1.7
+1
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Wieder hervorragend: Funktioniert!cmb wrote:Nein, im Gegenteil. Die function newsbox() müsste noch angepasst werden. Folgende Variante sollte es vielleicht schon tun:
...
Und zumindest für die Testphase sollte auch die Headingstruktur im TinyMCE-Format-Dropdown angepasst werden.
Im Tiny einfach alle oben - oddrrr?
Re: XH: alternatives Seitensplitten unabhängig von <hx> - Ta
Und welches Element? <p>? Gibt es nicht etwas spezielleres für Listenüberschriften?frase wrote:Definitiv kein <hx> sondern eine CSS-Klasse. (.xh_subHeading ?)cmb wrote:Eventuell gar kein <hX> verwenden? Aber was statt dessen?
Genau, und zwar in absteigender Reihenfolge (<h1>-<h6>). Ich habe schon mal einen Patch vorbereitet, den ich als Pull Request einreichen werden, wenn Holger mit den Umbauarbeiten fertig ist.frase wrote:Im Tiny einfach alle oben - oddrrr?
Hier der Patch:
Code: Select all
From 7d083279148aa4ea0bf278c2d1c79ded179ea388 Mon Sep 17 00:00:00 2001
From: "Christoph M. Becker" <cmbecker69@gmx.de>
Date: Sat, 26 Nov 2016 13:32:30 +0100
Subject: [PATCH] Fix TinyMCE 3 format select box
There is no difference between page headings and internal headings, so
we present all headings consecutively in the format select box.
Actually, we should remove the %PAGEHEADERS% and %HEADERS% placeholders
all together, but as TinyMCE 3 will likely be removed for XH 1.7 we
don't care to do so.
---
source/plugins/tinymce/inits/init_full.js | 2 +-
source/plugins/tinymce/inits/init_medium.js | 2 +-
source/plugins/tinymce/inits/init_minimal.js | 2 +-
source/plugins/tinymce/inits/init_sidebar.js | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/source/plugins/tinymce/inits/init_full.js b/source/plugins/tinymce/inits/init_full.js
index b68d280..6495fa8 100644
--- a/source/plugins/tinymce/inits/init_full.js
+++ b/source/plugins/tinymce/inits/init_full.js
@@ -24,7 +24,7 @@
theme_advanced_resizing : true,
// %PAGEHEADERS% = h1...hx for new pages, %NAMED_PAGEHEADERS% = 1. Level pageheader=h1 ...hx, %HEADERS% = remaining hy...h6
- theme_advanced_blockformats : "%HEADERS%,p=p,div=div,%PAGEHEADERS%,code=code,pre=pre,dt=dt,dd=dd",
+ theme_advanced_blockformats : "%PAGEHEADERS%,%HEADERS%,p=p,div=div,code=code,pre=pre,dt=dt,dd=dd",
theme_advanced_font_sizes : "8px=8px,10px=10px,12px=12px,14px=14px,16px=16px,18px=18px,20px=20px,24px=24px,36px=36px",
content_css : "%STYLESHEET%",
diff --git a/source/plugins/tinymce/inits/init_medium.js b/source/plugins/tinymce/inits/init_medium.js
index 9cb4758..a890b3f 100644
--- a/source/plugins/tinymce/inits/init_medium.js
+++ b/source/plugins/tinymce/inits/init_medium.js
@@ -23,7 +23,7 @@
theme_advanced_resizing : true,
// %PAGEHEADERS% = h1...hx for new pages, %NAMED_PAGEHEADERS% = 1. Level pageheader=h1 ...hx, %HEADERS% = remaining hy...h6
- theme_advanced_blockformats : "%HEADERS%,p=p,div=div,%PAGEHEADERS%,code=code",
+ theme_advanced_blockformats : "%PAGEHEADERS%,%HEADERS%,p=p,div=div,code=code",
theme_advanced_font_sizes : "8px=8px,10px=10px,12px=12px,14px=14px,16px=16px,18px=18px,20px=20px,24px=24px,36px=36px",
content_css : "%STYLESHEET%",
diff --git a/source/plugins/tinymce/inits/init_minimal.js b/source/plugins/tinymce/inits/init_minimal.js
index 224dfec..7eefa10 100644
--- a/source/plugins/tinymce/inits/init_minimal.js
+++ b/source/plugins/tinymce/inits/init_minimal.js
@@ -21,7 +21,7 @@
theme_advanced_resizing : true,
// %PAGEHEADERS% = h1...hx for new pages, %NAMED_PAGEHEADERS% = 1. Level pageheader=h1 ...hx, %HEADERS% = remaining hy...h6
- theme_advanced_blockformats : "%HEADERS%,p=p,div=div,%PAGEHEADERS%",
+ theme_advanced_blockformats : "%PAGEHEADERS%,%HEADERS%,p=p,div=div",
theme_advanced_font_sizes : "8px=8px,10px=10px,12px=12px,14px=14px,16px=16px,18px=18px,20px=20px,24px=24px,36px=36px",
content_css : "%STYLESHEET%",
diff --git a/source/plugins/tinymce/inits/init_sidebar.js b/source/plugins/tinymce/inits/init_sidebar.js
index 943f985..82a2a40 100644
--- a/source/plugins/tinymce/inits/init_sidebar.js
+++ b/source/plugins/tinymce/inits/init_sidebar.js
@@ -15,7 +15,7 @@
theme_advanced_resizing : true,
// %PAGEHEADERS% = h1...hx for new pages, %NAMED_PAGEHEADERS% = 1. Level pageheader=h1 ...hx, %HEADERS% = remaining hy...h6
- theme_advanced_blockformats : "%HEADERS%,p=p,div=div,%PAGEHEADERS%",
+ theme_advanced_blockformats : "%PAGEHEADERS%,%HEADERS%,p=p,div=div",
theme_advanced_font_sizes : "8px=8px,10px=10px,12px=12px,14px=14px,16px=16px,18px=18px,20px=20px,24px=24px,36px=36px",
content_css : "%STYLESHEET%",
--
2.8.1.windows.1
Christoph M. Becker – Plugins for CMSimple_XH