Přeskočit přímo na text


Print výsledek z "Skype Status" do user-profile.tpl.php

Kategorie: Úpravy témat vzhledu
Týká se verze: Drupal 6.x

Marně zkoušim zobrazit výsledek modulu Skype Status v user-profile.tpl.php

Pomocí print_r dostanu

… [#type] ⇒ user_profile_item [#printed] ⇒ 1 ) [#required] ⇒ [#tree] ⇒ [#attributes] ⇒ Array ( ) [#parents] ⇒ Array ( ) [#description] ⇒ [#type] ⇒ user_profile_ca­tegory [profile_skype] ⇒ Array ( [#required] ⇒ [#tree] ⇒ [#parents] ⇒ Array ( ) [#description] ⇒ [#attributes] ⇒ Array ( [class] ⇒ profile-profile_skype ) [#title] ⇒ Skype [#value] ⇒ [#weight] ⇒ 0 [#type] ⇒ user_profile_item [#printed] ⇒ 1 ) [#title] ⇒ Profil [#children] =>…

Dostal sem radu, že nejlepší bude bude podívat se do zdrojáku, jak to modul dělá v hook_user, op=view ale dvakrát moudrej z toho nejsem, hook_user sem v kodu nenašel. Už s tim nechci wojthu otravovat po IRC, proto píšu sem.

 

Odpovím možná trochu mimo,

Odpovím možná trochu mimo, ale já jsem modul Skype Status zvažovala (a nepoužila, protože nepoužívám modul Profile, což je podmínkou)… a vypisuju skype status jako ikonku v šabloně (v tomto případě v šabloně pole view) takto:

views-view-field–field-profile-skype-value.tpl.php:

<?php if($output != '') { ?>
  <!--
  Skype 'My status' button
  http://www.skype.com/go/skypebuttons
  -->
  <script type="text/javascript" src="http://download.skype.com/share/skypebuttons/js/skypeCheck.js"></script>
  <a href="skype:<?php print $output; ?>?chat"><img src="http://mystatus.skype.com/smallicon/<?php print $output; ?>" style="border: none;" width="16" height="16" alt="My status" /></a>
  <?php print $output; ?>
<?php } ?>

V tomto případě $output pole ve view je skype adresa zadaná jako plain text – pole v typu obsahu „profile“.

kod funguje, ani nepotřebuju

kod funguje, ani nepotřebuju modul skype status

<?php if($account->profile_skype) print ‚ My status
‘; else print '


'; ?> děkuju za pomoc. Ale stejně by mě zajímalo jak to pole z modulu vytisknout

co zkusit: <?php print

co zkusit: <?php print $account->content[$cate­gory][$skype_fi­eld][‚#value‘] ?> ?

modul nainstalovany nemam, koukam do cvs

ale je fakt, ze modul na

ale je fakt, ze modul na takovou vec bych asi vubec nepouzival :)

Nakonec pomohl tenhle kod

Nakonec pomohl tenhle kod (plus ten modul): <?php
$skype_field = variable_get(‚sky­pe_status_pro­file_field‘, '');
foreach ($account->content as $cat ⇒ $field) {
foreach ($field as $key ⇒ $val) {
if ($key == $skype_field) $category = $cat;
}
}
if (!empty($account->$skype_field) && $account->uid !== 0) {
$buttonstyle = variable_get(‚sky­pe_status_but­tonstyle‘, ‚bigclassic‘);
$status = skype_status_get­status(rawurlen­code($account->$skype_field));
$output = theme(‚skype_sta­tus‘, $account->$skype_field, $buttonstyle, $status);
$account->content[$cate­gory][$skype_fi­eld][‚#value‘] = $output;
if (variable_get(‚sky­pe_status_show_ti­tle‘, 1) === 0) unset($account->content[$cate­gory][$skype_fi­eld][‚#title‘]);
}

if ($account->profile_skype) { print ' ‚.$output.‘ '; } ?>

huh, to mi prijde jako az

huh, to mi prijde jako az prilis nemas v $skype_field nahodou key? aby ses obesel bez tech foreach? a imo, tohle vsechno se musi generovat uz driv, asi to budu muset nainstalovat :)

nevim co znamená key a

nevim co znamená key a foreach, ani imo O:-)

Poslat nový komentář

  • You can use Texy! to format and alter entered content.
  • Povolené HTML značky: <em> <strong> <b> <i> <br> <code> <ul> <ol> <li> <pre> <pre class="php">
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. Beside the tag style "<foo>" it is also possible to use "[foo]".

Více informací o možnostech formátování

Hledat

Přihlášení

Bezpečnost Drupalu

Z hlediska bezpečnosti je Drupal na velmi vysoké úrovni, díky propracovanému systému hlášení, prověřování a řešení možných problémů.

Čtěte více a odebírejte bezpečnostní aktuality

Poslední komentáře

Kdo je online

Momentálně je online 1 uživatel a 0 hostů.

Online uživatelé

Support

Psychologie - poradenství