Die Nuancen der kommerziellen Entwicklung auf WordPress



    Guten Tag, lieber Leser. Das Schicksal hat sich herausgestellt, dass ich einer der Verantwortlichen für die Entwicklung von Internetagenturprojekten in meiner Lieblingsstadt Chabarowsk bin. Und ich möchte Ihnen erzählen, wie wir die richtige Qualität des Produkts für Kunden bei relativ geringen Budgets im Vergleich zum zentralen Teil Russlands aufrechterhalten, was sich auf die Anforderungen an die Schnelligkeit der Montage des Projekts auswirkt. Mein Ziel ist es, die Entwicklungs- und Wartungskosten zu senken, was bedeutet, dass eine Website so schnell wie möglich mit möglichst vielen bearbeitbaren Elementen im Admin-Bereich erstellt werden muss.

    Die Informationen sind größtenteils „technischer Plan“ in Bezug auf CMS Worpdress, „erstklassig“. Ich spreche nur über unseren Weg, für wen der Einsatz von Technik, Wegen, Techniken usw. eine Frage der Religion - bitte verzichten Sie auf Holivars. Fangen wir an.

    Einen kleinen Exkurs beginnen. In unserer allgemeinen Masse haben wir genau gesagt, Projekte sind nach dem Entwicklungsprinzip in verschiedene Typen unterteilt:

    • HTML-Vorlage mit Themeforest -> Assembly auf CMS;
    • Design -> Layout -> Montage auf CMS;
    • Entwicklung individueller Lösungen.


    Ich werde sofort einen Vorbehalt geltend machen, dass ich nur die ersten beiden Punkte in diesem Artikel berücksichtigen werde, da es mir ziemlich schwierig erscheint, den dritten zu verallgemeinern, weil Die beliebtesten / besten / alle anderen schlechten Technologien eines jeden haben ihre eigenen und in kleinen Städten kann es schwierig sein, einen guten Entwickler für RoR / Flask und ähnliche zu finden. Und ich werde sie übersichtlich durchgehen. Wenn Interesse an diesem Thema besteht - warum nicht ein ausführliches Artikel-Tutorial "Wie man eine Website auf WP in 4-8 Stunden erstellt, mit dem der Kunde zufrieden sein wird."

    Warum WordPress?



    Niedrige Budgets und der Wunsch, der Welt weniger Entropie zu bringen, rechtfertigten die Wahl. Ausführlicher:

    • Der Komfort des Admin-Panels für Kunden. Ich meine es ernst, nach der Einführung dieses CMS sind alle Kundenschulungen auf die Tatsache zurückzuführen, dass wir ein Administratorkennwort senden. Die Erinnerungen an das Aufnehmen des Videos „Wie erstelle ich Nachrichten?“, „Wie ändere ich das Telefon auf der Website?“ Hörten auf, von mir zu träumen.
    • Geschwindigkeit der Site-Erstellung. Ungefähr 4-8 Stunden pro Projekt sind großartig. Wettbewerbsvorteil.
    • Kurve für die Schulung von Entwicklern zum Erstellen von Projekten. Bisher habe ich 1,5 Wochen Training von Grund auf absolviert (das heißt, die HTML-Abkürzung scheint ein Zauberspruch zu sein, der Satan verursacht), bis die Site in einem für mich geeigneten Zeitraum vollständig zusammengestellt ist.
    • Wunderschöne Grafik für Kunden mit einem CMS-Rating :)
    • Freeware, keine Lizenz erforderlich.


    Und ja, ich werde nicht mit einer Broschüre in meinen Händen an Ihre Tür klopfen und sagen: "Möchten Sie über WP sprechen?" Wir benutzen nur dieses CMS und es gibt einen Hinweis dazu. Tatsächlich ist hier ein Monolog in gedruckter Form, den ich allen neuen Webmastern vorstelle, die zu uns kommen.

    Welche Nuancen sollten beim Entwerfen eines Projekts berücksichtigt werden?



    Ich denke, Sie sollten bereits in dieser Phase über die Feinheiten des Baus der Website nachdenken. Hier sind einige allgemeine und spezifische Empfehlungen, möglicherweise offensichtliche, die aus den von mir verwendeten Plugins und Snippets stammen.

    Die Vorlage sollte leicht in den "Site-Header", den tatsächlichen Inhalt und die "Fußzeile" unterteilt werden können. Wenn Sie einige Elemente der Kopf- / Fußzeile ausblenden müssen, bietet WP einige wunderbare Funktionsbedingungen. ( ist Titelseite (), is_404 () usw.). Wenn Sie das Erscheinungsbild ändern müssen - CSS kann, ist body_class () verfügbar.

    Wenn die verschiedenen Menüs, die über das Menü Darstellung -> Site gesteuert werden, gesetzt werden, müssen Sie die folgende Struktur einhalten:



    Nuancen ist es wichtig , dass die Unterklasse die CSS sollte das Untermenü . Dadurch müssen Sie beim Erstellen der Site für die Funktion wp_nav_menu ($ args) ; keinen benutzerdefinierten Walker schreiben .

    Als Kapitän bin ich auf der Hand, aber alle dynamischen Positionen im Layout sollten entweder separate Elemente sein (wenn das Telefon beispielsweise + 7 XXX XXX usw. ohne Perversionen ist), um den Platzhalter weiter zu ersetzen, oder der folgenden logischen Struktur ähnlich sein:

    Layout zur Liste
    Layout des Listenelements
    ...
    Layout des Listenelements
    Layout nach Liste


    Es ist unbedingt erforderlich, in CSS eine separate Regel für den Inhalt zu erstellen, den Clients über wysiwyg im Admin-Bereich einfügen. So etwas (lass es WENIGER sein):

    .user-content{
    	...
    	a{
    		&:hover{ ... };
    		&:active{ ... };
    		&:focus{ ... };
    	}
    	p{ ... }
    	table{ 
    		thead {
    				...
    			th { ... }
    		}
    		tbody {
    			tr{
    				... 
    				td{ ... } 
    			}
    		}
    	}
    	h1, h2, h3, h4, h5, h6, h7{ … }
    	h1{ ... }
    	...
    	h7{ ... }
    	ul{
    		...
    		li{
    			...
    		}
    	}
    img{ … }
    }
    


    In Zukunft ersparen Sie sich Anrufe wie "Warum habe ich ein Bild eingefügt und alles ist gut gelaufen!".

    Wenn Sie Bildergalerien auf der Site haben (drei in einer Reihe, sechs in einer Reihe usw.), müssen Sie das Layout dieser Galerien in das Layout bringen, das generiert eine WP-Shortcode-Galerie. Oder definieren Sie diesen Shortcode neu und richten Sie das Layout so ein, dass die Regeln „Layout vor der Liste, Layout des Listenelements, Layout nach der Liste“ eingehalten werden, wenn die WP-Funktionalität in Bezug auf die Anzahl der Spalten und andere Dinge redundant ist.

    Das von WP erzeugte Layout der Paginierung hat ungefähr die folgende Form:



    Das Layout der "Paniermehl" ist trivial. Entweder ul li liste oder durch ">>" getrennt und andere mögen sie.

    Ich möchte auch sagen, dass der gesamte Block des Obenstehenden in eine Phrase passt - Auferlegen, Stylen des Markups, das WP / Plugins / Snippets-Funktionen generieren, und es wird Glück geben.

    Habe eine Reihe von HTML / CSS / JS-Dateien, was kommt als nächstes?



    Derzeit haben wir ein Repository mit dem Namen kosher_wordpress, sodass wir nicht jedes Mal eine Reihe von Plug-ins installieren müssen. Was ist drin und was ist meiner Meinung nach im Moment genug:

    • Die neueste Version von WP.
    • Kein Standardkennwort für den Administrator;).
    • Der Ersteller neuer Beitragstypen mit benutzerdefinierten Feldern im Admin-Bereich. Wir benutzen Magic Fields 2 . Wird verwendet, um Elemente der Liste Elementliste -> Separate Elementseite zu erstellen. Vorlagen der Form archive- $ type.php und single- $ type.php oder Ausgabe mit WP_Query.
    • Ein Erbauer neuer Felder für die Taxonomie mit Tax-Meta-Class
    • Customizer zum Bearbeiten von Bildschirmen. Ich benutze Advanced CustomFields . Unverzichtbar für den nächsten Fall. Es gibt eine Kontaktvorlage, zum Beispiel tpl-contacts.php , in der der Vorlagenname angegeben ist : Kontaktseitenvorlage . Wenn Sie diese Vorlage im Admin-Bereich auswählen, werden auf der Kontaktbearbeitungsseite zusätzliche Felder angezeigt, z. B. die Koordinaten der Karte, das angehängte Feedback-Formular usw. Und hier hilft er uns.
    • Erbauer von Glockenspielen, Rückmeldungen, Bestellungen usw. Kontaktformular 7
    • Der Builder für globale Websiteeinstellungen. Es wird für Mobiltelefone in einem Hut, soziale Netzwerke und andere Informationen dieser Art verwendet. Themenoptionen .
    • Functions.php mit Funktionen, die fast die gesamte verbleibende Funktionalität abdecken:
      • Support-Theme-Menü. register_nav_menus ();
      • Thumbnail-Unterstützung für Posts. add_theme_support ('Post-Thumbnails');
      • Ändern Sie die Größe von Bildern, mit Unterstützung von less-> more und Caching. resize_image ($ attach_id = null, $ img_url = null, $ width, $ height, $ crop = false)
      • Brotkrumen-Generator. the_breadcrumb () .
      • Seitennavigationsgenerator. wp_corenavi ($ wp_query)
      • Benutzerdefinierter Walker zum Erweitern von wp_nav_menu (). Klasse My_Walker erweitert das Walker Nav-Menü { originaler WP-Code }
      • Berühren Sie, um den Galerie-Shortcode zu ändern. remove_shortcode ('gallery', 'gallery_shortcode'); add_shortcode ('gallery', 'my_gallery_shortcode'); function my_gallery_shortcode ($ attr) {}
      • Seitennavigationsgenerator. wp_corenavi ($ wp_query)
    • Datei mit Snippets zur Erinnerung.


    Und die gesamte Projektzusammenstellung läuft auf Folgendes hinaus:

    • Erstellen eines virtuellen Hosts auf einem Computer
    • Git-Klon ...
    • Importieren Sie db, geben Sie drei SQL-Befehle ein, um WP mitzuteilen, welche aktuelle URL wir haben ( gist )
    • Kopieren von Ausschnitten aus dem zweiten Monitor und Füllen des Layouts mit Bedeutung.
    • Stellen Sie es auf dem Server und bei einer Tasse Kaffee bereit


    Der ungefähre Inhalt der Datei mit Ausschnitten:
    
    
    
    
    
        
            ID));
            $image = vt_resize(null, $url, 220, 220, true);
            if (!$image['url']) $image['url'] = 'http://placehold.it/220x220&text=NO IMAGE';
            ?>
            
            
        
    
        

    'news', 'posts_per_page' => '3', 'paged' => $paged ); /* Делаем инстанс WP_Query */ $the_query = new WP_Query($args); ?> have_posts()) : ?> have_posts()) : $the_query->the_post(); ?> post->ID)); $image = vt_resize(null, $url, 220, 220, true); if (!$image['url']) $image['url'] = 'http://placehold.it/220x220&text=NO IMAGE'; ?> the_post(); выше втыкаем global $more;$more=0; * Или с настройками WP шаманим по части вывода анонсов. */ ?>


    Im letzten Jahr habe ich nach diesem Algorithmus mehr als hundert Websites gesammelt, im Durchschnitt dauert es 1 bis 3 Werktage, abhängig von der Komplexität des Designs und den verschiedenen Bewegungseffekten. Die Montage selbst dauert ca. 4-8 Stunden. Vielleicht ist dies nicht das Ergebnis, aber soweit ich nichts zu vergleichen habe, werde ich dem Dialog dankbar sein.

    Nur registrierte Benutzer können an der Umfrage teilnehmen. Bitte komm rein .

    Ist es sinnvoll, ein detailliertes Tutorial mit einer Reihe von Codes und Beispielen zu schreiben?

    • 83,3% Ja 718
    • 16,6% Nr. 143

    Jetzt auch beliebt: