Extensão:ContactPage

This page is a translated version of the page Extension:ContactPage and the translation is 60% complete.
Manual de extensões do MediaWiki
ContactPage
Estado da versão: estável
Implementação Página especial , Hook
Descrição Fornece um formulário de contato para visitantes
Autor(es) Daniel Kinzler, Sam Reed
Última versão Continuous updates
Política de
compatibilidade
Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki >= 1.42.0
PHP 5.4+
Modifica o banco
de dados
Não
Licença GNU GPL (Licença Pública Geral) 2.0 ou superior
Download
README
Exemplo nl.wikipedia.org
  • $wgContactConfig
Quarterly downloads 46 (Ranked 91st)
Para traduzir a extensão ContactPage, verifique sua disponibilidade no translatewiki.net
Função no Vagrant contactpage
Problemas Tarefas em aberto · Relatar um bug

A extensão ContactPage implementa um formulário de contato para visitantes. Cria uma página especial "Special:Contact", que é semelhante a "Special:EmailUser", mas tem um destinatário fixo, podendo ser utilizada sem registro.

Instalação e configuração

  • Baixe e coloque o(s) arquivo(s) num diretório chamado ContactPage na sua pasta extensions/.
    Developers and code contributors should install the extension from Git instead, using:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/ContactPage
  • Adicione o seguinte código ao final do seu arquivo LocalSettings.php :
    wfLoadExtension( 'ContactPage' );
    $wgContactConfig['default'] = [
    	'RecipientUser' => 'WikiUser',  // Must be the name of a valid account which also has a verified e-mail-address added to it.
    	'SenderName' => 'Contact Form on ' . $wgSitename,  // "Contact Form on" needs to be translated
    	'SenderEmail' => null,  // Defaults to $wgPasswordSender, may be changed as required
    	'RequireDetails' => true,  // Either "true" or "false" as required
    	'IncludeIP' => true, // Either "true" or "false" as required
    	'MustBeLoggedIn' => true,  // Check if the user is logged in before rendering the form. Either "true" or "false" as required
        'NameReadonly' => false, // Set to "true" to make the name field read only
        'EmailReadonly' => false, // Set to "true" to make the email address field read only
        'SubjectReadonly' => false, // Set to "true" to make the subject line field read only
        'MustHaveEmail' => false, // Set to "true" to require that the user submitting the form must have an associated email address
    	'AdditionalFields' => [
    		'Text' => [
    			'label-message' => 'emailmessage',
    			'type' => 'textarea',
    			'rows' => 20,
    			'required' => true,  // Either "true" or "false" as required
    		],
    	],
    	'DisplayFormat' => 'table',  // See HTMLForm documentation for available values.
    	'RLModules' => [],  // Resource loader modules to add to the form display page.
    	'RLStyleModules' => []  // Resource loader CSS modules to add to the form display page.
    ];
    
  • See the README file for further options to customize and adapt as it convenes.
  •   Concluído – Navegue à página Special:Version em sua wiki para verificar se a instalação da extensão foi bem sucedida.
You can require a CAPTCHA test for the contact page, if you have the ConfirmEdit extension installed. CAPTCHAs are enabled by adding
$wgCaptchaTriggers['contactpage'] = true;
to "LocalSettings.php" below the invocation of both extensions.


Mais personalização

MediaWiki 1.37.0 or later
  1. Add the following code without changing it to your "LocalSettings.php" file:
    $wgHooks['SkinAddFooterLinks'][] = function( Skin $skin, string $key, array &$footerlinks ) {
        if ( $key === 'places' ) {
            $footerlinks['contact'] = Html::element( 'a',
                [
                    'href' => 'https://www.example.org/wiki/Special:Contact',  // URL to "Special:Contact"
                    'rel' => 'noreferrer noopener'  // not required, but recommended for security reasons
                ],
            $skin->msg( 'contactpage-label' )->text()
            );
        };
    };
    
  2. Add the label for "Special:Contact" to system message MediaWiki:Contactpage-label.
MediaWiki 1.36.x or earlier
  1. Add the following code without changing it to your "LocalSettings.php" file:
    $wgHooks['SkinTemplateOutputPageBeforeExec'][] = function( $skin, &$template ) {
    	$contactLink = Html::element( 'a', [ 'href' => $skin->msg( 'contactpage-url' )->escaped() ],
    		$skin->msg( 'contactpage-label' )->text() );
    	$template->set( 'contact', $contactLink );
    	$template->data['footerlinks']['places'][] = 'contact';
    	return true;
    };
    
  2. Add the URL of "Special:Contact" to system message MediaWiki:Contactpage-url and
  3. Add the label for "Special:Contact" to system message MediaWiki:Contactpage-label.

Creating complex forms

See HTMLForm and related pages for more information on the possibilities available to create more complex forms.

Issues

Users of some hosting providers such as SiteGround and Amazon SES may get a PHP mail error or one that says that the FROM email address is not configured in the server, despite $wgPasswordSender being configured correctly and other email functionality working as expected. A fix for this issue is described here.

See also

  • Extension:EmailPage - Allows sending fully rendered articles with embedded CSS to users, groups, or contact lists
  • Extension:CIForms - Forms with auto-validation, multiple choice questions and cloze tests