Перейти к публикации

надо ФИО автора вместо ника!


Рекомендованные сообщения

нужно, чтобы в новости вместо ника автора(логина) выводилось его Ф.И.О., которое можно указать в профиле как "Полное имя" ...

подскажите как сделать, плиз!

Ссылка на сообщение
Поделиться на других сайтах

Ну парень решил денег заработать ) Как я понимаю один раз обьявить {fullname} полем из профила, а потом его всегда юзать в шаблоне.

Ссылка на сообщение
Поделиться на других сайтах

Ну парень решил денег заработать ) Как я понимаю один раз обьявить {fullname} полем из профила, а потом его всегда юзать в шаблоне.

да ладно клевета все. :angry:

Просто здесь долго объяснять что и где.

в аське человеку все объяснил, он сам вроде сделал. а менять всего 3 php и 2 tpl.

просто я сначала не до конца оценил масштаб вот и все.

Ссылка на сообщение
Поделиться на других сайтах
:rolleyes: расскажи уж, а то вдруг еще кому-нить понадобиться Изменено пользователем Neshta
Ссылка на сообщение
Поделиться на других сайтах

в engine.php в $sql_news там где есть текст дописываем связку с таблицей USERPREFIX. "_users" - сами найдете оптимальный вариант с помощь phpMyAdmin или аналога. Соответсвенно в предложении Select добавить поле fullname.

в show.full.php ищем

	if ($config['allow_alt_url'] == "yes"){

			$tpl->set('{author}', "<a {$go_page}href=\"".$config['http_home_url']."user/".urlencode($row['autor'])."/\">".$row['autor']."</a>");

	} else {

			$tpl->set('{author}', "<a {$go_page}href=\"$PHP_SELF?subaction=userinfo&amp;user=".urlencode($row['autor'])."\">".$row['autor']."</a>");

	}
ниже или выше (или вообще меняем) дописываем
	if ($config['allow_alt_url'] == "yes"){

			$tpl->set('{fullname}', "<a {$go_page}href=\"".$config['http_home_url']."user/".urlencode($row['autor'])."/\">".$row['fullname']."</a>");

	} else {

			$tpl->set('{fullname}', "<a {$go_page}href=\"$PHP_SELF?subaction=userinfo&amp;user=".urlencode($row['autor'])."\">".$row['fullname']."</a>");

	}

по аналогичной методике меняем show.short.php

после этого можете использовать в шаблонах новостей метатэг {fullname} вместо(е) {author}

вот такая простая хака.

Если можно сделать проще - милости просим код в студию (я не претендую на то что лучше нет, наоборот, интересно можно ли сделать проще).

Ссылка на сообщение
Поделиться на других сайтах

engine.php в $sql_news там где есть текст дописываем связку с таблицей USERPREFIX. "_users" - сами найдете оптимальный вариант с помощь phpMyAdmin или аналога. Соответсвенно в предложении Select добавить поле fullname.

можно поподробнее, чо-то не получается у меня ... ((

вот кусов кода с запросом:

// ################ Новость целиком #################

	if ($subaction != '' OR $newsid) {

		if (!$newsid)

			$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access FROM " . PREFIX . "_post WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR LIMIT 0,1";

		else

			$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, FROM " . PREFIX . "_post where  id = '$newsid' LIMIT 0,1";


		if ($subaction == '') $subaction = "showfull";

	}

и как должно быть чтобы заработало?

Изменено пользователем 1ce
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

ну, вроде бы, благодаря помощи Lifestar, разобрался...

описываю весь процесс, как сделать ФИО вместо ника в новостях:

1. открываем \engine\engine.php

a)

ищем:

$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read FROM " . PREFIX . "_post WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
там в 2 местах, я заменил в обоих :) и заменяем на:
$sql_select = "SELECT id, autor, date, short_story, full_story, p.xfields, title, category, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, u.fullname FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." AND u.name = p.autor ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
------ B) ищем:
 

$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read FROM " . PREFIX . "_post WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
и заменяем на:
$sql_select = "SELECT id, autor, date, short_story, full_story, p.xfields, title, category, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, u.fullname FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." AND u.name = p.autor ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
------ с) ищем:
// ################ Новость целиком #################

if ($subaction != '' OR $newsid) {

if (!$newsid)

$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access FROM " . PREFIX . "_post WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR LIMIT 0,1";

else

$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access FROM " . PREFIX . "_post where  id = '$newsid' LIMIT 0,1";
и заменяем на:
// ################ Новость целиком #################

if ($subaction != '' OR $newsid) {

	if (!$newsid)

$sql_news = "SELECT id, autor, date, short_story, full_story, p.xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.fullname FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR AND u.name = p.autor LIMIT 0,1";

else

$sql_news = "SELECT id, autor, date, short_story, full_story, p.xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.fullname FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u where  id = '$newsid' AND u.name = p.autor LIMIT 0,1";
2. открываем \engine\modules\show.short.php ищем:
// Обработка дополнительных полей

$tpl->set('{title}', stripslashes($row['title']));
и после добавляем:
if ($config['allow_alt_url'] == "yes")

$tpl->set('{fio}', "<a {$go_page} href=\"".$config['http_home_url']."user/".urlencode($row['autor'])."/\">".$row['fullname']."</a>");

else

$tpl->set('{fio}', "<a {$go_page} href=\"$PHP_SELF?subaction=userinfo&amp;user=".urlencode($row['autor'])."\">".$row['fullname']."</a>");
3. открываем \engine\modules\show.full.php ищем:
$tpl->set('{title}', $metatags['title']);

$tpl->set('{short-story}', stripslashes($row['short_story']));

$tpl->set('{full-story}', stripslashes("<div id='news-id-".$row['id']."'>".$row['full_story']."</div>"));
и впереди этого вставляем:
if ($config['allow_alt_url'] == "yes")	

$tpl->set('{fio}', "<a {$go_page} href=\"".$config['http_home_url']."user/".urlencode($row['autor'])."/\">".$row['fullname']."</a>");

else

$tpl->set('{fio}', "<a {$go_page} href=\"$PHP_SELF?subaction=userinfo&amp;user=".urlencode($row['autor'])."\">".$row['fullname']."</a>");
4. остались изменения в шаблонах. a) открываем \teamlates\Default\shortstory.tpl заменяем {author} на {fio} B) открываем \teamlates\Default\fullstory.tpl заменяем {author} на {fio} для полного щастья, можно еще исправить комментарии и логин: с) открываем \teamlates\Default\comments.tpl заменяем {author} на {fullname} d) открываем \teamlates\Default\login.tpl заменяем:
Привет, <strong>{$member_id['name']}
на:
Здравствуйте,<br> <strong>{$member_id['fullname']}

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

Действительна... Установить по умолчанию ФИО и вставить в шаблон, всего-то делов, правда если ФИО разные, тут уже другая ситуация.

Ссылка на сообщение
Поделиться на других сайтах

это не совсем тот вариант...

просто уже куча пользователей есть....

и все у них заполнено....

и чо-то дозаполнять смогут и захотят не все.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...