Rozděleno: Přidání více informací o uživateli

Úvodní stránka Fórum podpory WordPressu Pluginy (funkčnost webu) Rozděleno: Přidání více informací o uživateli

Zvolené téma obsahuje celkem 4 odpovědi. Do diskuze (2 účastníci) se naposledy zapojil uživatel  admin a poslední změna je stará 9 let, 8 měsíců.

Aktuálně je na stránce zobrazeno 5 příspěvků - 1. až 5. (z celkem 5)
  • Autor
    Příspěvky
  • #19748

    edisek
    Participant

    Ahoj,
    taky to teď řeším, ale nechápu to. Našel jsem si v db tabulku s uživatelskými daty, našel jsem si ty 4 funkce na úpravu, ale nikde jsem nenašel to volání funkce new_contactmethods. Můžete mi, prosím, napsat kde ji najdu? Snažím se to celé pochopit. Je to tak, že si ty další uživatelské informace v této funkci nadefinuju a pak přitom zobrazení v administraci musím kód rozšířit o tato pole, aby se mi zobrazili, konkrétně v wp-admin/user-edit.php a pak ještě v seznamu všech uživatelů, tj. wp-admin/users.php?

    Diky moc za cas.

    H.

    #19752

    edisek
    Participant

    Odpovím si sám ;-)
    ta fce se přidává do wp-config.php, co jsem se díval, tak na netu se pak řešili smazání Google+ a pole webová stránka.
    Google+ se maže takto: unset($contactmethods[‘googleplus’]); coz nevim proc, protoze pri vypisu toho pole $contactmethods tam zadny index s timto nazvem neni-hlavne, ze to funguje. Webova stranka je v user-edit.php a v user-new.php napevno, takze se musi smazat rucne… snad to nekomu pomuze ;-)

    H.

    #19766

    admin
    Keymaster
    Web

    Dotaz pro přehlednost oddělen z tohoto tématu.

    edisek: Vůbec tomu nerozumím… Do souboru wp-config.php se žádná funkce rozhodně nepřidává. Google+ mazat nemusíte, protože tam nikde v výchozím nastavení není. Nepřidává ho nějaký plugin či šablona? Ani webovou stránku nemusíte mazat ručně, stačí použít jQuery a příslušné akce admin_head-user-edit.php a admin_head-user-add.php.

    Nemáte ale jednodušší použít nějaký plugin, např. některý ze zmiňovaných v původním tématu?

    #19772

    edisek
    Participant

    No, protoze v tom nejsem odbornik, tak jsem to delal metodou pokus omyl a to takhle:
    do wp-config.php jsem pridal tento kod:

    function new_contactmethods( $contactmethods ) {
     unset($contactmethods['googleplus']); // Remove googleplus
     return $contactmethods;
    }
    add_filter('user_contactmethods','new_contactmethods',10,1);

    v user.php jsem zakomentoval ten kod, ktery zobrazuje webovou stranku
    a v user.php jsem upravil tuto fci nasledovne:

    function _wp_get_user_contactmethods( $user = null ) {
    	$user_contactmethods = array();
    	if ( get_site_option( 'initial_db_version' ) < 23588 ) {
    		$user_contactmethods = array(
    			'birthdate'    => __( 'Datum narození' ),
    			'address'    => __( 'Adresa' ),
    			'phone' => __( 'Telefon' ),
    			'profession' => __( 'Profese' ),
    			'price' => __( 'Příspěvek (Kč)' ),
    			'registrationdate' => __( 'Datum registrace' )
    		);
    	}
    	return apply_filters( 'user_contactmethods', $user_contactmethods, $user );
    }

    Nechtel jsem to resit pluginem, prislo mi, ze toto je jen uprava info o uzivatelich. Nevim, jestli to je programatorsky ci metodicky spravne, ale jina cesta me nenapadla. Pokud to je spatne, jak pisete, tak mi prosim napiste jak jinak to upravovat, popr. se v tom vyznat, protoze jsem treba tu informaci o google+ v tech meta info nenasel a nenapadlo by me kde to hledat. Rad bych pochopil logiku toho celeho, takhle jsem nad tim stravil den ;-)
    Moc dekuji za rady.
    H.

    #19806

    admin
    Keymaster
    Web

    První kód se rozhodně nevkládá do souboru wp-config.php, ale můžete si vytvořit vlastní malý plugin (v podstatě samostatný PHP soubor v adresáři wp-content/plugins, kam budete ukládat svoje úpravy) nebo použít soubor functions.php v adresáři používané šablony (ještě lepší je pak použít šablonu odvozenou).

    Samotné pole pro Google Plus není součástí WordPressu, takže proto jsem původně doporučoval, abyste ho zkusil nejdříve někde vypnout. Možná ho tam přidává nějaký plugin nebo speciální nastavení šablony a stačí jen někde jednoduše zaškrtnout, že ho nechcete používat a nemusíte řešit žádnou vlastní funkci.

    Druhá úprava souboru user.php je ale úplný nesmysl. Víte, co se stane za tři týdny až vyjde nový WordPress 4.0? O všechny provedené úpravy kompletně přijdete během aktualizace. Dále vůbec nejde o možnosti kontaktu (contactmethods). Logicky třeba “Datum narození” je osobní informace, ale není to způsob kontaktu (email, sociální sítě). A i kdyby jste to přesto chtěl použít pro tyto účely, tak to neupravujte v souboru user.php, ale opět použijte filtr user_contactmethods. Rozhodně bych ale v tomto případě doporučil použít nějaký plugin, mnohé byly doporučovány v původním tématu a pořádně ho ještě celé prostudovat.

Aktuálně je na stránce zobrazeno 5 příspěvků - 1. až 5. (z celkem 5)

Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.

WordPress – novinky, návody a zajímavosti