Codeigniter 助手重复 HTML 代码片段
Posted
技术标签:
【中文标题】Codeigniter 助手重复 HTML 代码片段【英文标题】:Codeigniter Helpers Repeat HTML Code Snippet 【发布时间】:2018-12-06 07:20:02 【问题描述】:我正在使用 CI3。
我有一段代码(如下所示),可在我的网站上显示社交分享链接。该代码仅在某些视图上需要。 html 代码是;
<!-- Sharingbutton Facebook -->
<a class="resp-sharing-button__link" href="https://facebook.com/sharer/sharer.php?u=http://www.example.com<?php echo .$result['id'] ?>" target="_blank" aria-label="Share on Facebook">
<div class="resp-sharing-button resp-sharing-button--facebook resp-sharing-button--large"><div aria-hidden="true" class="resp-sharing-button__icon resp-sharing-button__icon--solid">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.77 7.46H14.5v-1.9c0-.9.6-1.1 1-1.1h3V.5h-4.33C10.24.5 9.5 3.44 9.5 5.32v2.15h-3v4h3v12h5v-12h3.85l.42-4z"/></svg>
</div>Share on Facebook</div>
</a>
<!-- Sharingbutton Twitter -->
<a class="resp-sharing-button__link" href="https://twitter.com/intent/tweet/?text=Super%20fast%20and%20easy%20Social%20Media%20Sharing%20Buttons.%20No%20javascript.%20No%20tracking.&url=http%3A%2F%2Fsharingbuttons.io" target="_blank" aria-label="Share on Twitter">
<div class="resp-sharing-button resp-sharing-button--twitter resp-sharing-button--large"><div aria-hidden="true" class="resp-sharing-button__icon resp-sharing-button__icon--solid">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M23.44 4.83c-.8.37-1.5.38-2.22.02.93-.56.98-.96 1.32-2.02-.88.52-1.86.9-2.9 1.1-.82-.88-2-1.43-3.3-1.43-2.5 0-4.55 2.04-4.55 4.54 0 .36.03.7.1 1.04-3.77-.2-7.12-2-9.36-4.75-.4.67-.6 1.45-.6 2.3 0 1.56.8 2.95 2 3.77-.74-.03-1.44-.23-2.05-.57v.06c0 2.2 1.56 4.03 3.64 4.44-.67.2-1.37.2-2.06.08.58 1.8 2.26 3.12 4.25 3.16C5.78 18.1 3.37 18.74 1 18.46c2 1.3 4.4 2.04 6.97 2.04 8.35 0 12.92-6.92 12.92-12.93 0-.2 0-.4-.02-.6.9-.63 1.96-1.22 2.56-2.14z"/></svg>
</div>Share on Twitter</div>
</a>
与其在我的每个视图上复制/粘贴这段代码 sn-p,我想我可以创建一个辅助函数并将其包含在我想要显示代码 sn-p 的页面上 - 这可能吗?
所以我的观点看起来像;
// some html here
<?php social_share_links_helper() ?>
// more html here
我在helpers/social_share_links_helper.php
创建了一个空文件,并在我的控制器中包含了$this->load->helper('social_share_links');
我不确定接下来要做什么才能echo
social_share_links_helper()
助手中的 html?
也许有更有效的方法来做到这一点?
感谢任何建议。
【问题讨论】:
您是否考虑过,在您的views 文件夹中创建一个自己的social-sharing.php
视图,然后通过$this->load->view('social-sharing');
在您需要它的那些视图中加载它?
【参考方案1】:
是的,您可以在您进一步创建的助手的帮助下这样做,您可以这样做:
只需在 social_share_links_helper.php
中创建一个函数名称 social_share_links
function social_share_links()
/*Just replace your anchor here with yours */
$social_links = '<a class="resp-sharing-button__link" href="https://facebook.com/sharer/sharer.php?u=http://www.example.com/'.$result['id'].' target="_blank" aria-label="Share on Facebook">
<div class="resp-sharing-button resp-sharing-button--facebook resp-sharing-button--large">
<div aria-hidden="true" class="resp-sharing-button__icon resp-sharing-button__icon--solid">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path d="M18.77 7.46H14.5v-1.9c0-.9.6-1.1 1-1.1h3V.5h-4.33C10.24.5 9.5 3.44 9.5 5.32v2.15h-3v4h3v12h5v-12h3.85l.42-4z"/>
</svg>
</div>Share on Facebook
</div>
</a>';
/*Other link here*/
$social_links .= '<a href=""></a>';
echo $social_links;
在您看来,请像这样使用social_share_links
方法:
<div class="row">
<?php social_share_links();?>
</div>
【讨论】:
好的,我在链接中用你的变量名更新了我的答案,添加其他链接,就像它一样 如果我的回答对您有帮助,请也接受它作为答案以上是关于Codeigniter 助手重复 HTML 代码片段的主要内容,如果未能解决你的问题,请参考以下文章