Lesley,
This is set in php and then assigned to tpl. It's being set from two places CRM/Contribute/Form/Contribution/Main.php and CRM/PCP/BAO/PCP.php. Since its being assigned to tpl through php then its pretty simple and easy to change the text using either preprocess/buildform/postprocess hook by over-riding the tpl variable.
Here are list of lines that uses the variable to print the text
templates//CRM/Contribute/Form/Contribution/Main.tpl:177: {if $pcpSupporterText}
templates//CRM/Contribute/Form/Contribution/Main.tpl:178: <div class="crm-public-form-item crm-section pcpSupporterText-section">
templates//CRM/Contribute/Form/Contribution/Main.tpl:180: <div class="content">{$pcpSupporterText}</div>
templates//CRM/Event/Form/Registration/Register.tpl:61: {if $pcpSupporterText}
templates//CRM/Event/Form/Registration/Register.tpl:62: <div class="crm-public-form-item crm-section pcpSupporterText-section">
templates//CRM/Event/Form/Registration/Register.tpl:63: <div class="content">{$pcpSupporterText}</div>
If you not familiar with using php then you can JS to replace the text. Here is what i would do
- Create a Main.extra.tpl under
templates/CRM/Contribute/Form/Contribution/
(custom template directory or extension)
- Add below snippet in Main.extra
Snippet:
{if $pcpSupporterText}
<div class='crm-pcp_supporter_text_replace'>
<div class='content'>
{ts}Text to print{/ts}
</div>
</div>
{literal}
<script type="text/javascript">
CRM.$(function($) {
$("div.pcpSupporterText-section .content").replaceWith($('.crm-pcp_supporter_text_replace .content'));
});
</script>
{/literal}
{/if}
HTH
Pradeep