[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Direkter Sprung auf Block durch Link auf Anker
Seite 1 von 1

Direkter Sprung auf Block durch Link auf Anker

Verfasst: 12. Jul 2017, 11:27
von Phonamet
In meinem Addon liste ich für jeden Block die Block-ID und Artikel-ID auf.
Nun möchte ich zur Bearbeitung diesen Block direkt in einem neuen Fenster anspringen.

Code: Alles auswählen

# Liste auslesen
$list = rex_list::factory('SELECT ... FROM rex_article_slice ....;

# Spalte: id
# Link zur Bearbeitung
$list->setColumnParams('id', ['page' => 'content/edit', 'article_id' => '###article_id###', 'slice_id' => '###id###', 'clang' => '###clang_id###']);

# Link-Attribute ergänzen
$list->addLinkAttribute('id', 'target', 'manipulate');
liefert den Link
  • /redaxo/index.php?page=content/edit&article_id=4&slice_id=42&clang=1&list=38....d5e
Ich möchte den Link um den Anker slice42 erweitern
  • /redaxo/index.php?page=content/edit&article_id=4&slice_id=42&clang=1&list=38....d5e#slice42
In der \redaxo\src\core\lib\list.php gibt es zwar die function getColumnLink($columnName, $columnValue, $params = []), aber damit kann ich keinen Anker definieren.

Wie kann ich einen beliebigen Anker an die Url anfügen?

[SOLVED] Direkter Sprung auf Block durch Link auf Anker

Verfasst: 12. Jul 2017, 17:19
von Phonamet
Problem gelöst!

Ich habe in meinem Addon die Funktion getColumnLink aus der Klasse rex_list um den Anker #slice.. ergänzt

Code: Alles auswählen

class my_rex_list extends rex_list {

public function getColumnLink($columnName, $columnValue, $params = []) {
return '<a href="' . $this->getParsedUrl(array_merge($this->getColumnParams($columnName), $params)) . '#slice' . $columnValue . '"' . $this->_getAttributeString($this->getLinkAttributes($columnName, [])) . '>' . $columnValue . '</a>';
}

}

...
$list = my_rex_list::factory('SELECT '....);