Purpose
Interact is a simple PHP open-source comment system that can be added to any website in minutes to improve interactivity and user's involvement. Client-side, it is very lightweight (<6KB CSS and JS combined) and intuitive (no logins, no cookies,...). Server-side, it is very easy to setup, manage and even customize to fit your needs.
Interact PHP with the default theme
Similarly to its older brother HashOver, Interact does not use an SQL database but stores comments as XML files. Many third-party comment systems like Disqus, IntenseDebate, Livefyre, Facebook Comments and Google+ Comments, suffer from these problems and impose them and many other restrictions onto their users, meaning you and your website's visitors.
Features
- No dependency.
- Fast and convenient for your users with responsive design.
- Very simple setup: no database to configure, just install it and add 2 lines of PHP where you want your comment section to be.
- Easily customizable style and behavior to match the look & feel of your website.
- Anti-Spam system using Google's reCAPTCHA v2 (optional).
- Pure JS (no JQuery required).
- Secure by design.
- Inline Markdown syntax support in comments (bold, italics,
strike-throughandinline code
) (can be disabled). - Open-source (MIT license).
- W3C compliant and follows accessibility rules.
Installation and setup
Requirements: PHP≥5, php-xml.
- Download/clone Interact on GitHub.
- Put the "Interact_PHP" folder under your website's root (or relocate the folder where you want and change the
LIBRARY_ROOT
setting accordingly). - Optional: customize Interact's behavior to your needs by editing the Interact_PHP/settings.php file and/or the Interact_PHP/strings.xml.
- Give the directory that will contain the comments 777 permission (
chmod -R 777 path/to/interact_php/Comments
). Alternatively,chown
the folder to the user that is configured to execute PHP scripts as, for example "www-data". And then simply give the "path/to/Interact_PHP/Comments" directory permissions "755".
Hurray, Interact is ready to go! To add a comment section to a page, just insert the following PHP in any page:
<?php
include_once($_SERVER['DOCUMENT_ROOT'].'/interact_php/Interact_PHP.php');
\Interact_PHP\Interact_PHP("<some-id-such-as-article-title>");
?>
The parameter <some-id-such-as-article-title>
is what will be used to associate the comments with this form. If you call \Interact_PHP\Interact_PHP()
without an argument, it creates an ID from the URL, but this is not recommended.
You can call \Interact_PHP\Interact_PHP()
multiple times per page if you need multiple comment forms (e.g. a page with several articles).
Parameters and customization
All of the core parameters of Interact are in the settings.php file. There are a lot of comments to assist you in the configuration process. Some of them, like enabling reCAPTCHA are highly recommended.
Look and feel
Several CSS files are included with Interact PHP. If you want to add your own style, copy an existing CSS file to get started... and commit it on GitHub if you want to contribute to Interact's ongoing development!
Various included themes with Interact PHP
Internationalization
Interact PHP supports full internationalization: all user-visible strings are stored in a "string.xml" file. You can edit this file to match your website or add translations, and call \Interact_PHP\Interact_PHP("<some-id-such-as-article-title>", "language")
with another parameter "language" that is the desired language to display.
If you need a single display language, you can just customize the "default" language.
Admin interface
If you set up a value for ADMIN_PASSWORD
, Interact PHP enables a very simple admin interface that allows to delete and promote comments (to show an "Author" badge).
The administration interface for Interact PHP
It is accessible from the url: https://your_website_url/path/to/interact_php/admin/admin.php
.
Note about security: Interact PHP only stores a hash of the password, and the absolute worst that can happen if a bad actor were to gain access would be the ability to remove comments, which is negated by doing backups of the comment files (anyway recommended). Regardless, I would highly advise only enabling this admin interface if the two conditions below are met:
- Your website uses HTTPS,
- You either enabled the reCAPTCHA anti-spam system for Interact PHP and/or you have another way to prevent brute-forcing on your website.
Troubleshooting
This section describes the various problems you may encounter while installing/using Interact. If you don't find a solution here, please add a GitHub issue.
- I can't add comments
You should check the permissions of the folder containing the comments (Interact/Comments by default). The PHP user must be able to write there. Setting 777 works (chmod -R 777 Comments
).
If the libxml PHP library is not enabled, installing should fix the issue (e.g. sudo apt-get install php-xml
, restart Apache when completed).
- The CSS does not load
The path of the library relative to the root of your website is probably incorrect. Make sure it matches with the value in settings.php. By default, it is /interact_php.
- I am getting reCAPTCHA errors even after checking the box
You need to make sure that your reCAPTACHA public and secret keys are correct. Interact uses reCAPTCHA v2. More info at https://developers.google.com/recaptcha/docs/display
Future features/work in progress
This is the list of future features, by priority:
- New feature: collapsible comment box if the comment box height is more than N pixels or N comments
- New feature: optional hidden email field to allow the webmaster to contact users
Please submit a GitHub issue for feature requests or bug reports.
License
This library is published under MIT license.
Author: Charles Grassin
What is on your mind?
#1 leo
on April 11 2019, 2:39
#2 兔
on April 11 2019, 2:44
#3 Author Charles
on May 12 2019, 2:57
#4 Pierrot
on April 3 2023, 17:33
#5 Drozsam
on July 9 2023, 4:47
#6 KennethCoida
on July 20 2023, 23:55
#7 Tilly
on August 19 2023, 1:46
#8 http://kheymomo.blogspot.com/
on September 27 2023, 11:10
#9 http://kheymomo.blogspot.com/
on September 27 2023, 11:10
#10 Verla
on October 29 2023, 21:11
#11 Triarne
on November 3 2023, 12:34
#12 RobertSnork
on December 6 2023, 17:25
#13 Brooche
on January 2 2024, 4:47
#14 russian teacher porn
on January 25 2024, 20:43
#15 массаж секс
on January 25 2024, 20:45
#16 русское порно
on January 26 2024, 9:15
#17 секс по пьяне
on January 27 2024, 14:10
#18 Порно массаж
on January 27 2024, 14:29
#19 секс на массаже
on January 27 2024, 23:10
#20 массаж порно
on January 28 2024, 4:14
#21 ебут пьяных
on January 29 2024, 8:57
#22 порно hd план
on February 6 2024, 14:08
#23 Triarne
on February 7 2024, 12:32
#24 DStMTtRwc
on February 9 2024, 2:35
#25 отец ебет дочь
on February 9 2024, 13:22
#26 Brooche
on February 9 2024, 18:15
#27 KgJePxZi
on February 10 2024, 1:33
#28 лизание попки
on February 10 2024, 7:36
#29 AWemKtV
on February 10 2024, 12:15
#30 Сквирт
on February 11 2024, 15:01
#31 sex camera
on February 11 2024, 15:19
#32 голая сосет
on February 12 2024, 12:20
#33 порно азиаточки
on February 12 2024, 12:37
#34 DAdtNXBp
on February 12 2024, 19:19
#35 shhsgZ
on February 13 2024, 10:50
#36 Triarne
on February 13 2024, 22:08
#37 qLirvZv
on February 15 2024, 9:08
#38 вылизал анал
on February 15 2024, 17:56
#39 голые армянки
on February 15 2024, 18:35
#40 Triarne
on February 15 2024, 20:54
#41 анал измена
on February 16 2024, 12:01
#42 Brooche
on February 17 2024, 0:51
#43 секс с докторшей
on February 17 2024, 10:26
#44 вылизал письку
on February 18 2024, 10:38
#45 порно пов
on February 18 2024, 11:27
#46 Zcivme
on February 18 2024, 18:11
#47 Brooche
on February 19 2024, 3:16
#48 DXdTbJ
on February 19 2024, 10:03
#49 loe2
on February 21 2024, 10:58
#50 Knoccax
on February 21 2024, 17:46
#51 tpLYLBu
on February 22 2024, 8:21
#52 QDqjepohc
on February 23 2024, 5:09
#53 JczLBFUh
on February 24 2024, 6:15
#54 Seaf
on February 26 2024, 10:12
#55 Dier
on February 28 2024, 8:08
#56 Agicecype
on February 29 2024, 9:00
#57 Dier
on February 29 2024, 20:56
#58 Seaf
on March 1 2024, 11:21
#59 Agicecype
on March 1 2024, 18:38
#60 DURNEKERE
on March 2 2024, 7:00
#61 Knoccax
on March 3 2024, 23:05
#62 DURNEKERE
on March 4 2024, 12:23
#63 Dier
on March 4 2024, 23:26
#64 Dier
on March 5 2024, 16:09
#65 Dier
on March 6 2024, 10:04
#66 Hans
on March 6 2024, 16:40
#67 paurrylep
on March 18 2024, 22:15
#68 Mike
on March 20 2024, 6:42
#69 Mike
on March 20 2024, 6:43
#70 BaroCrott
on March 21 2024, 8:41
#71 Randell
on March 22 2024, 2:56
#72 BaroCrott
on March 23 2024, 18:11
#73 paurrylep
on March 24 2024, 16:25
#74 BaroCrott
on March 28 2024, 14:40
#75 BaroCrott
on March 29 2024, 18:10
#76 BaroCrott
on March 30 2024, 22:50
#77 BaroCrott
on April 5 2024, 8:22
#78 11
on April 12 2024, 7:46
#79 paurrylep
on April 13 2024, 13:22
#80 James
on April 14 2024, 10:02
#81 BaroCrott
on April 16 2024, 4:05
#82 BaroCrott
on April 18 2024, 17:27
#83 paurrylep
on April 19 2024, 15:22
#84 BaroCrott
on April 23 2024, 20:25
#85 Irma
on April 24 2024, 2:57
#86 BaroCrott
on April 25 2024, 8:20
#87 Nilda
on April 26 2024, 15:11
#88 BaroCrott
on April 26 2024, 23:09
#89 Kandis
on April 27 2024, 2:31
#90 Dolores
on April 27 2024, 19:43
#91 Leia
on April 28 2024, 10:09
#92 Boyd
on April 30 2024, 0:48
#93 paurrylep
on April 30 2024, 15:08
#94 Leticia
on May 1 2024, 19:04
#95 Lanny
on May 2 2024, 22:04
#96 BaroCrott
on May 3 2024, 19:59
#97 Josefina
on May 6 2024, 22:54
#98 BaroCrott
on May 7 2024, 0:15
#99 paurrylep
on May 8 2024, 4:58
#100 Emmett
on May 12 2024, 6:46
#101 Stacey
on May 12 2024, 23:19
#102 hlkhjl
on May 15 2024, 3:40
#103 Neacciste
on May 18 2024, 17:10
#104 paurrylep
on May 21 2024, 15:56
#105 Trequevem
on May 24 2024, 0:46
#106 Trequevem
on May 27 2024, 3:31
#107 Veishen
on May 28 2024, 2:34
#108 Trequevem
on May 31 2024, 13:30
#109 Trequevem
on June 1 2024, 13:13
#110 Trequevem
on June 2 2024, 14:38
#111 immarse
on June 5 2024, 5:06
#112 Randy
on June 8 2024, 5:44
#113 higueve
on June 12 2024, 4:51
#114 higueve
on June 17 2024, 10:39
#115 ukrain-Forum.Biz.Ua
on June 20 2024, 21:12
#116 higueve
on June 21 2024, 15:31
#117 Telkom
on June 25 2024, 6:34
#118 Telkom
on June 25 2024, 6:34
#119 Greg
on June 25 2024, 18:37
#120 https://Ukrain-Forum.BIZ.Ua
on June 29 2024, 11:19
#121 ukrain-Forum.biz.ua
on July 1 2024, 15:44
#122 Omronet
on July 9 2024, 22:38
#123 anilingus.tv
on July 10 2024, 15:39
#124 Русское Порно 365
on July 11 2024, 6:49
#125 higueve
on July 14 2024, 8:29
#126 https://odessaforum.biz.ua/
on July 22 2024, 4:53
#127 https://odessaforum.biz.ua/
on July 24 2024, 4:22
#128 https://Odessaforum.biz.ua/
on July 26 2024, 12:32
#129 anilingus.tv
on July 27 2024, 0:56
#130 odessaforum.biz.ua
on July 28 2024, 21:56
#131 https://Zeleniymis.com.ua/
on August 1 2024, 15:52
#132 Zeleniymis.com.ua
on August 7 2024, 0:46
#133 WilliamSmeft
on August 14 2024, 20:08
#134 KevinLiape
on August 17 2024, 0:02
#135 Jakonnet
on August 17 2024, 16:23
#136 66bb4c96e165c.site123.Me
on August 20 2024, 1:08
#137 Brianwax
on August 20 2024, 16:50
#138 Robertfam
on August 21 2024, 17:53
#139 Bennybog
on August 22 2024, 21:58
#140 ThomasOreda
on August 24 2024, 20:07
#141 bandur-art.blogspot.com
on August 27 2024, 1:25
#142 avenue17
on August 30 2024, 16:47
#143 Omnilnet
on September 2 2024, 1:59
#144 Omnilnet
on September 2 2024, 17:30
#145 Carsonadvor
on September 5 2024, 19:09
#146 Carsonadvor
on September 6 2024, 3:34
#147 RonaldNes
on September 6 2024, 18:20
#148 RonaldNes
on September 7 2024, 11:25
#149 https://lvivforum.Pp.ua
on September 13 2024, 12:32
#150 vvvvv
on September 15 2024, 20:26
#151 Kennethstymn
on September 16 2024, 0:03
#152 https://Lvivforum.Pp.ua/
on September 17 2024, 15:32
#153 Lvivforum.Pp.Ua
on September 18 2024, 23:26
#154 Kennethstymn
on September 25 2024, 12:48
#155 Reda
on October 1 2024, 17:34
#156 avenue17
on October 3 2024, 16:51
#157 Joleen
on October 3 2024, 19:40
#158 Oren
on October 5 2024, 1:36
#159 Beltonnet
on October 5 2024, 18:59
#160 Jakonnet
on October 6 2024, 9:50
#161 Velosnet
on October 6 2024, 14:45
#162 Juan
on October 6 2024, 15:00
#163 Veishen
on October 6 2024, 21:33
#164 Ronnynet
on October 6 2024, 22:26
#165 Trequevem
on October 7 2024, 2:46
#166 Trequevem
on October 8 2024, 20:08
#167 Brandie
on October 9 2024, 7:17
#168 Trequevem
on October 12 2024, 12:56
#169 Gilberttor
on October 16 2024, 11:24
#170 https://lvivforum.pp.ua/
on October 21 2024, 21:00
#171 https://Lvivforum.Pp.ua
on October 26 2024, 1:23
#172 Jamestweft
on October 30 2024, 22:44
#173 https://Ternopil.pp.ua/
on October 31 2024, 9:04
#174 Robertbrura
on November 4 2024, 17:01
#175 Robertbrura
on November 5 2024, 15:06
#176 https://Evolution.Org.ua/
on November 7 2024, 16:54
#177 avenue17
on November 11 2024, 21:05
#178 BryanZek
on November 18 2024, 22:59
#179 BryanZek
on November 19 2024, 1:53
#180 StephenLor
on November 20 2024, 21:03
#181 BryanZek
on November 21 2024, 0:31
#182 BryanZek
on November 21 2024, 0:59
#183 BryanZek
on November 21 2024, 2:42
#184 https://Evolution.ORG.Ua/
on November 22 2024, 8:53
#185 https://Evolution.org.ua/
on November 26 2024, 3:39
#186 Brandonhok
on December 1 2024, 0:17
#187 RobertoRer
on December 3 2024, 4:22
#188 https://evolution.Org.ua/
on December 9 2024, 17:29
#189 Arthurrop
on December 14 2024, 17:20
#190 Arthurrop
on December 15 2024, 12:36