Die Pro Version kann das sogar per User
Beiträge von mensmaximus
-
-
-
Ein Plugin oder das Theme können die Höhe und Breite der Produkte nicht mehr berechnen, wenn sie nicht sichtbar sind, daher die Verschiebung. Also alle Plugin bis auf Woo deaktivieren und testen. geht es dann immer noch nicht liegt es am Theme. Ansonsten solange Plugins reaktivieren bis es wieder nicht mehr geht. Danach mit den Entwicklern des Plugins oder Themes sprechen. Das hier im Forum zu debuggen sprengt meinen zeitlichen Rahmen.
-
Das scheint ein Problem mit dem Theme zu sein. Bitte wieder auf display:none stellen
-
Jetzt wird es aber zäh. Blende das DIV permanent ein und lade die Seite. Ich möchte wissen ob das CSS dann geladen wird.
-
Bitte lies meinen Beitrag erneut.
-
Weil das WooCommerce CSS nicht geladen wird. Was passiert wenn Du das DIV mit dem Shortcode beim Laden anzeigen lässt?
-
Klar geht das. Ein Membership Plugin installieren und die externen Daten als Links einbinden.
-
Das kann man ja entsprechend programmieren indem man nur auf dem Parent die Children ausgibt.
-
Ich weiß dass es existiert, habe es aber noch nie verwendet
-
So, den Code in 3 ersetzen durch
CodejQuery(document).ready(function($) { 'use strict'; $('#ebenen').delegate( '.toggle-button', 'click', function(e){ e.preventDefault(); var layer = $(this).data('layer'); $('.toggle-layer').hide(); $('#' + layer ).show(); }); });Vergiss die Punkte 6 und 7. Baue Dein Layout von folgendem Code neu auf:
Code<div id="ebenen"> <button class="toggle-button" data-layer="ebene2">ebene 2</button> <button class="toggle-button" data-layer="ebene3">ebene 3</button> <div id="ebene2" class="toggle-layer" style="display:none;">ebene 2</div> <div id="ebene3" class="toggle-layer" style="display:none;">ebene 3</div> </div> -
1. Erstelle ein Childtheme
2. Erstelle eine Datei mit Namen mmx-helper.js
3. Kopiere folgenden Code in die Datei:Code
Alles anzeigenjQuery(document).ready(function($) { 'use strict'; $('.toggle-button').delegate( '.toggle-layer', 'click', function(e){ e.preventDefault(); $('.toggle-layer').hide(); $(this).show(); }); });
4. Speichere die Datei im Verzeichnis des Childtehems ab
5. Kopiere folgenden Code in die Datei functions.php des ChildthemesCodeadd_action( 'wp_enqueue_scripts', 'mmx_load_scripts', '99' ); function mmx_load_scripts() { wp_enqueue_script( 'mmx-helpers', get_stylesheet_directory_uri() . '/mmx-helper.js'); }
6. Entferne Deinen Javascriptcode aus Deinem Code ink. den onclick Events auf den Buttons
7. Gib Deinen Buttons die CSS Klasse 'toggle-button'
8. Entferne die Ebenen IDs von allen Elementen und gib den Elementen die Ein-/Ausgeblendet werden sollen die CSS Klasse 'toggle-layer'Das ist jetzt mal auf die schnelle gecodet, also keine Garantie für Fehlerfreiheit.
PS: ich habe noch eine Data Eigenschfat vergessen um die Ebenen anzusprechen. Auf die Buttons muss also z.B. ein data-layer mit dem Namen der Ebene. Fang schon mal an, ich passe das Script an.
-
das <div> im Javascript Code habe ich wohl im eifre des Gefechts übersehen, habe es ergänzt und es läuft wieder nur das jetzt der Shortcod permanent ausgeblendet bleibt.
Klar weil das auch divs sind und Du blendest ja alle divs aus. Arbeite mit Klassen als Slektoren, verwende ein Delegate Event, arbeite mit Objekten und data Eigenschaften schreibe den Code in eine eigene Datei, die Du mit wp_enqueue_scripts() über ein Childtheme einbindest.
-
("ebenen").getElementsByTagName("p"); geht bei divs natürlich nicht. Wie gesagt der Code ist nicht sehr modern und sollte komplett umgeschrieben werden. Ebenso die Art der Einbindung. Egal, Du weißt jetzt wo das Problem liegt (Shortcodes brechen <p> Tags) und kannst Dein Skript überarbeiten.
-
Dann sortiere die Unterseiten (Childs) doch einfach unter die Hauptseiten ein (Parent) und schreibe eine Funktion die auf der Hauptseite alle Unterseiten als Menü anzeigt (https://codex.wordpress.org/Function_Refer…t_page_children)
-
Der Javascript Code taucht in der Seite nicht mehr auf.
-
Mach aus den <p> Elementen divs. Der Shortcode bricht aus dem Paragraph aus und liegt derzeit nicht innerhalb des auszublenden <p>
-
Welchen manuellen Ansatz Du wählst bleibt egal. Manuell ist aufwändig und solange nicht klar ist wie die Zusammenhänge sind, kann man keinen besseren Weg vorschlagen.
-
-- entfernt wegen Fehlinterpretation --
-
Link zur Seite bitte.