Changing SagaAlgorithmProvider.py will add SAGA to the processing menu, but may not work, depending on your setup.
A lot of the SAGA command line options changed between 2.2 and 2.3, so some of the algorithms won't work. Processing thinks it's calling 2.3, and sets the command line options accordingly. SAGA 2.2 then complains about unknown parameters.
I'm using a Mac, with the KyngChaos build of QGIS (2.18.13, Nov 2017)
I got SAGA 2.3 to work by installing the SAGA LTS using homebrew...
brew install saga-gis-lts
Calling
saga_cmd --version
shows it's 2.3.2
Using
which saga_cmd
shows saga_cmd lives in /usr/local/bin
When processing starts up, it looks in the QGIS install folder for SAGA. The KyngChaos build includes saga 2.2, so Processing will choose that, rather than 2.3.2.
To get around that, I edited the SagaUtils.py, commenting out and replacing the line 'testfolder='
def findSagaFolder():
folder = None
if isMac():
#testfolder = os.path.join(QgsApplication.prefixPath(), 'bin')
testfolder = '/usr/local/bin'
. . .
Restarted QGIS, and SAGA 2.3 is available :-)
brew install saga-gis
. But now i'm searching which folder I have to set up in Qgis advanced option.../usr/local/Cellar/saga-gis-lts/2.3.2
,/usr/local/Cellar/saga-gis-lts/2.3.2/lib
,/usr/local/Cellar/saga-gis-lts/2.3.2/bin
. I don't know what he needs to access.